ProxySQL
ProxySQL 是一个高性能,高可用性,的数据中间层项目。
高性能
ProxySQL 具有先进的多核架构。 它从根本上构建,支持数十万个并发连接,复用到可能数百个后端服务器。 最大的 ProxySQL 部署跨越了几百个代理。
高效的工作负载管理
ProxySQL 可帮助您从 MySQL 集群中挤出最后一滴性能,而无需控制生成查询的应用程序。
二、特性
ProxySQL helps you squeeze the last drop of performance out of your MySQL cluster, without controlling the applications that generate the queries.
1)Query caching查询缓存
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.
2)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.
3)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.
4)Query Routing 查询路由
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.
5)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.
6)Firewall 防火墙
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.
7)Supports failover 支持错误迁移
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.
8)Cross platform 跨平台
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.
三、ProxySQL1.3.2/ MariaDB MaxScale2.0.3/ HAProxy1.7/ NGINX1.11.8/ MySQL Router2.0大比拼