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
Comparing Query Cache in ProxySQL and MaxScale
Few days ago MariaDB announced MaxScale 2.1.0 Beta, and among the new Query Performance capabilities there is Query Cache Filter. Query Cache was among the…
ProxySQL and MaxScale on point select workload
Few days ago MariaDB announced that MaxScale 2.1 is roughly 45% faster than MaxScale 2.0 . I first want to congratulate MaxScale Team: MaxScale 2.1 seems to…
Last month, January 2017, two DevOps meetups were organized in Spain with the same topic: "Conociendo ProxySQL", presented by txetxu Velayos ,…
Releasing ProxySQL 1.3.4
I am happy to announce the release of the latest stable release of ProxySQL 1.3.4 on 18 February 2017. ProxySQL is a high performance, high availability,…
Testing performance of MySQL Group Replication
MySQL Group Replication is a hot topic in MySQL ecosystem. We have been evaluating it in , and it is now time to evaluate its performance, especially now that…