1. 性能瓶颈
2. 优化建议
2.1 本地节点存在性能瓶颈
2.2 不恰当的流控
2.3 大事务造成延迟
2.4 网络存在瓶颈
2.5 其他MySQL性能瓶颈因素
3. 小结
本文介绍MGR性能优化相关内容。
1. 性能瓶颈
在MGR架构中,可能存在众多会影响整体性能,包括本地节点中常见的一些性能瓶颈点,也包括MGR层产生的。
一般而言,造成MGR性能瓶颈的原因有以下几种情况:
集群中,个别节点存在性能瓶颈;
不恰当的流控阈值,导致性能受限;
官方版本流控算法缺陷,导致性抖动大;
大事务造成延迟,甚至节点退出;
网络成为瓶颈,导致消息延迟大;
其他MySQL常见性能瓶颈导致。
接下来,我们针对以上几种情况,分别进行分析并给出优化建议。
2. 优化建议
2.1 本地节点存在性能瓶颈
在MGR中,可能各个节点服务器配置等级各不相同,所能承载的业务压力也不同。因此,各节点可能会分别产生不同的事务延迟,或者等待被应用的事务堆积越来越多。
这种情况下,最有效的办法就是提升该节点的服务器配置级别,提高业务承载能力。同时,也要检查MySQL配置选项,是否有设置不合理的地方,并且可以考虑将选项 innodb_flush_log_at_trx_commit 和 sync_binlog 都设置为 0,以降低该节点的磁盘I/O负载,提升事务应用效率。
在GreatSQL中,还可以设置选项 group_replication_single_primary_fast_mode = 1(要求所有节点都这么设置),启用快速单主模式,提升MGR事务应用效率。
2.2 不恰当的流控
在深入浅出MGR——流量控制(流控)这节内容中我们讲过,MySQL的流控机制有明显的缺陷,实际流控效果很有限,并且还可能会起到反作用,因此不建议启用MySQL的流控机制。即设置选项 group_replication_flow_control_mode = DISABLED。
在G

本文针对MGR架构中的性能瓶颈提供优化建议,包括提升节点配置、调整流控设置、避免大事务、改善网络质量和解决MySQL性能问题。
1656

被折叠的 条评论
为什么被折叠?



