MySQL Router是一个轻量级的中间件,提供了应用程序与后端数据库的透明路由,是mysql用来实现负载均衡和高可用功能。同时router也提供了使用fabric 高可用的方式。MySQL Router就是一个轻量级的中间件用来实现高可用和扩展性的功能。MySQL Fabric最大的一个缺点是应用需要改造,用Fabric独有的Java或python驱动,并且目前只支持Java,Python php语言,即MySQL Fabric是在驱动层面实现的高可用和扩展功能。而MySQL Router是一个中间件,该中间的访问协议与MySQL一致,应用不需要做任何的修改。
[DEFAULT]
logging_folder = /var/log/mysqlrouter
[logger]
level = INFO
[routing:failover]
bind_address = 10.166.224.50
bind_port = 7001
max_connections = 1024
mode = read-write
destinations = 10.166.224.33:3310,10.166.224.34:3310
[routing:balancing]
bind_address = 10.166.224.50
bind_port = 7002
connect_timeout = 3
max_connections = 1024
mode = read-only
destinations = 10.166.224.33:3310,10.166.224.34:3310
通过该配置文件启动MySQL Router会监听两个端口10.166.224.50:7001和10.166.224.50:7002。10.166.224.50:7001是一个高可用的端口(mode=read-write),通过7001的端口访问MySQL Router中间件会首先将请求发送到服务器10.166.224.33:3310,如果确定该服务器宕机,则会发送到服务器10.166.224.34:3310。10.166.224.50:7002是一个负载均衡的端口,每个都请求可以将通过roundrobin的方式发送到destiantions对应的MySQL服务器。通过MySQL Router用户可以快速实现一个简单的带有读写分离的高可用集群。MySQL Router甚至可以链接MySQL Fabric的元数据库,具体可查看MySQL Router的相关文档。
MySQL Router之前官方的中间件是MySQL Proxy,这么多年一直是alpha版本,堪称业界奇迹。不过随着MySQL Router的发布,官网其实已经无法直接下载MySQL Proxy了。但Inside君还是决定对MySQL Router和MySQL Proxy做一个简单的性能测试。测试场景是全内存的SELECT操作,测试工具使用sysbench,测试环境是网易云主机。最终的测试结果如下图所示:

测试使用16线程的select.lua脚本的测试,对比远程客户端直连MySQL,远程客户端连接MySQL Router,远程客户端连接到MySQL Proxy,后两者需要再进行一个转发才能连接到目的MySQL数据库,因此性能肯定会比直连MySQL方式要差。从结果看MySQL Router比直连MySQL性能要差15%,QPS平均值接近20000。但是MySQL Proxy的测试结果QPS仅5700,简直惨不忍睹。导致这样结果最重要的原因是MySQL Proxy采用使用lua脚本语言,测试过程中CPU负载高达290%(4核CPU)。MySQL Proxy测试过程中CPU的使用率在50%左右,表现较为平稳。
看来MySQL Router用来做负载均衡是一个不错的选择,特别是用来做高可用架构下的只读VIP,那么对比传统的LVS性能又会是怎样呢?接着Inside君又对比了MySQL Router和LVS的负载均衡性能测试对比,同样是SELECT全内存测试,但是并发数提升至128个线程。测试结果如下所示:

可以发现在128个线程下单实例MySQL直连模式和MySQL Router中间件模式已经没有太大的区别,QPS都在26000左右。当采用两个MySQL实例实现只读操作的负载均衡时,可以发现MySQL Router的QPS在48000左右,而LVS模式在52000左右,性能提升8%,更为重要的是LVS转发服务器上基本没有什么负载。
上手快,很容易配置
较为稳定,性能中没有遇到什么问题
插件式的架构允许用户进行额外功能的扩展
缺点:
仅支持简单的负载均衡功能
高可用功能有待进一步测试
虽然支持Fabric元数据,但是不支持分库分表(不得不说是一个遗憾)
白名单,SQL统计功能,防火墙功能缺失
需要gcc 4.8以上版本支持,老系统编译比较麻烦些
开发者其他应用

七猫免费阅读小说最新版41.6M234049人在玩七猫免费阅读小说下载安装app,七猫免费阅读小说app不一样的小说阅读神器,这里有着海量丰富小说应用资源,你想看的小说通过强大搜索引擎一键搜索即可,主要的是阅读小说还能够获取红包现金奖励哦。
下载
奇热漫画app安卓版25.5M13451人在玩奇热漫画是一款非常不错的漫画阅读软件,具有很多强大的阅读功能,奇热漫画app实时为你更新全网最新最热的动漫资源。平台拥有海量精彩漫画,官方正版漫画
下载
奇热小说app24.8M234499人在玩安卓奇热小说app是专为众多爱看小说的人士提供的手机看小说的软件,省流量极速免费看小说,海量热门小说任你看,喜欢小说的小伙伴不要错过,赶快下载奇热小说网手机版客户端体验吧
下载
2022快看漫画App最新版69.0M51448人在玩2022快看漫画,相信许多玩微博的小伙伴们都已经知道这款APP了。吵架归吵架,至于这款快看漫画App到底做得怎么样,只有试过才知道!
下载
豆瓣阅读客户端app70.2M9579人在玩豆瓣阅读app是一款为豆瓣的用户们量身定做的APP,在豆瓣阅读这里你可以看到更加符合豆瓣用户喜好的各类文字作品,而且目前书籍依然在持续增长中。
下载
追书神器官方版70.1M19679人在玩追书神器2022最新版是一款超级强力的小说导读助手,目前几大热门的小说连载网站均有关联,你可以通过它方便地寻找自己喜欢的书籍。
下载
腾讯动漫71.9M13609人在玩腾讯动漫寒假档,许多大人们认为动漫就是小孩子看的东西,但是大概从80后开始,动漫就成为了许多人生活中的一部分,如果你喜欢看动漫,可以来腾讯动漫吧,这里有最新动漫更新视频
下载
书旗小说免费版本32.7M22553人在玩书旗小说免费版下载安装,书旗小说免费版本是一款以书旗网海量小说为基础的在线/离线阅读器,集合在线阅读、本地阅读、书包下载、自动书签、智能搜索、阅读设置等多项人性化功能。
下载
搜狗阅读器app19.5M6809人在玩搜狗阅读是搜狗公司依托于搜狗搜索的丰富资源,为安卓用户打造的移动阅读应用产品。搜狗阅读海量图书即搜即看,新闻大事掌握在手,更有离线缓存、精品推荐、更新提醒等功能,让您随时随地享受阅读的快乐。
下载
起点读书app新版本202237.2M11875人在玩起点读书app新版本,又名起点看书,是起点中文网推出的一款阅读软件。它支持本地阅读并提供起点在线书库,具备多种格式的解析阅读功能
下载