暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL中间件ProxySQL概述

雷雷DBA 2022-05-23
551

MySQL中间件ProxySQL概述

                                         --2022-05-23 春雷


~~~~~~~~~~~~~ 前言 ~~~~~~~~~~~~~


    ProxySQL 是基于 MySQL 的一款开源的中间件的产品,是一个灵活的 MySQL 代理层。可以实现读写分离,支持 Query 路由功能,支持动态指定某个 SQL 进行缓存,支持动态加载(无需重启 ProxySQL 服务),故障切换和一些 SQL 的过滤功能。

相关 ProxySQL 的网站 :

  • https://www.proxysql.com/

  • https://github.com/sysown/proxysql/wiki

注:

此篇文章引用的ProxySQL版本为2.0.10,比较老,版本上推荐大家使用最新的即可


~~~~~~~~~~~~~ 问题与解决 ~~~~~~~~~~~~~



~~~~~~~~~~~~~ 在58的实践 ~~~~~~~~~~~~~

  • 中间件自动将读写分离

  • 多个中间件进行负载均衡

~~~~~~~~~~~~~ ProxySQL性能 ~~~~~~~~~~~~~

结论:

  • ProxySQL随机读写场景,同比直连MySQL,QPS最高损失8.06%Latency增加8.75%,可以满足MySQL QPS需求(如果有高QPS需求,也可以考虑架构层的优化,例如引入redis等缓存,或者扩容从实例数量....)

  • 线程数越多,ProxySQL QPS损失越少,延迟增加越少


【测试具体】


【2个ProxySQL的QPS及延迟情况】 


【QPS与线程数关系】


【延迟与线程数关系图】 


【延迟与线程图】


~~~~~~~~~~~~~ 测试的机器信息 ~~~~~~~~~~~~~



文章转载自雷雷DBA,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论