Keen on performance
Battle-tested doesn't even begin to cover it — it is war-tested. Performance is the priority and the numbers have it.
ProxySQL has an advanced multi-core architecture. It's built from the ground up to support hundreds of thousands of concurrent connections, multiplexed to potentially hundreds of backend servers. The largest ProxySQL deployment spans several hundred proxies.
The development team doesn't need to rewrite queries generated by ORMs or software that can’t be easily modified. Meet ProxySQL's query rewriting feature, that empowers you to use the resources of your MySQL cluster as efficiently as possible.
Using its advanced rule engine, ProxySQL can easily support sharding by host, schema or a combination between the two. This requires minimal modifications to SQL queries, and to the application logic.
Efficient workload management
ProxySQL helps you squeeze the last drop of performance out of your MySQL cluster, without controlling the applications that generate the queries.
Forget applications that generate load by inefficiently accessing the same results over and over again. ProxySQL quickly jumps in with its advanced rule engine. Results can also be cached for a configurable timespan, in native MySQL packets format.
Take an advanced case, where different classes of queries need to be routed to different MySQL clusters, with different configurations. Solve it with ProxySQL's hostgroup concept. Based on an advanced matching engine, it is able to route queries transparently towards the destination cluster that can execute them most efficiently.
While ProxySQL does not offer support failover as a feature, it collaborates smoothly with the existing tools that enable it. It monitors the health of the backends it communicates with and is able to temporarily shun them based on configurable error rates.
Advanced configuration with 0 downtime
ProxySQL’s configuration system is inspired from routers. You can dynamically configure everything, persist the configuration and modify it. All with 0 downtime.
Application layer proxy
ProxySQL does not forward traffic blindly. It understands the MySQL protocol and acts accordingly. That's why it can easily serve advanced use-cases such as sticky transactions or real-time, in-depth statistics generation about the workload.
ProxySQL works out of the box on multiple flavors of Linux and FreeBSD. Moreover, it should be easily portable to other platforms where a gcc-compatible toolchain is available.
Advanced topology support
Cascading proxies for extra availability and flexibility. Complex MySQL topologies support, involving replication and failover or query mirroring. All of it performed effortlessly by ProxySQL.
In case of offending queries that cause problems to the DB (SQL injection or inefficient retrieval of information via SELECT * without WHERE, for example), ProxySQL acts as a gatekeeper between the application and the DB, allowing DBAs to react quickly.
ProxySQL: by DBAs for DBAs
Take back control of your MySQL cluster today. Scale and operate it smoothly. Unlock an unprecedented level of flexibility and performance. All the while getting the unlimited freedom that comes with a GPL license.
Latest Blog Posts
Amazon Aurora - Seamless Planned Failover with ProxySQL
One of the more popular solutions for a DBaaS in today's market is Amazon's RDS / Aurora service. Historically Amazon RDS was quite popular however Aurora has…
Scaling from a Dark Ages of Big Data to Brighter Today
This topic has been up in the air for a long time. What would be the best approach: get less large boxes or smaller for the same price? What would be pros and…
SSL Encryption at ProxySQL Part 1
As we all know, MySQL supports using SSL to secure connections by encrypting the data in transit and protecting it from snooping on the wire. As of now, since…
GTID consistent reads
Adaptive query routing based on GTID tracking ProxySQL is a layer 7 database proxy that understands the MySQL Protocol. It provides high availability and high…
ProxySQL new routing algorithm to handle hundreds of thousands of schemas/shards
ProxySQL is a service designed to scale and handle traffic in very large setups. In the past we already showed examples of how ProxySQL can handle thousands of…