mysql发生只读的原因_关于同步延迟原因与处理的RDS MySQL 只读实例

关于同步延迟原因与处理的RDS MySQL 只读实例

RDS MySQL只读实例一般来说用于分担主实例的查询(Select)压力,或者用于运行OLAP类型的分析应用,避免复杂统计查询对主实例的性能影响。

RDS MySQL只读实例架构图如下所示:

e63bcd6392a81a678efc34fdb6806e04.png

因为RDS只读实例采用MySQL原生的基于Binlog的复制技术(半异步复制或异步复制),所以延迟必然会成为成立之初就存在的问题。

由于延迟会导致只读实例与主实例的数据出现不一致的情况,进而可能造成业务上逻辑的混乱或者数据不正确。另外延迟也有可能引起Binlog数据堆积,导致只读实例空间被迅速消耗(如果主实例当前正产生大量的binlog数据),这种情况下有可能会使只读实例被锁定。

只读实例产生延迟的原因

1.主实例的TPS(Transaction Per Second)过高

主实例的 TPS (Insert、Update、Delete)过高导致只读节点延迟。如下图所示:

分析:

由于只读节点与主实例同步采用的是单线程同步,而主实例的压力是并发多线程写入,这样在主实例高并发DML TPS 情况下非常容易出现只读实例的数据延迟,可以通过观察只读实例节点的TPS与 主实例的TPS性能数据来完成判断。

主实例的 TPS如下图 :

4d7727000f7865e4152001a8cad9c39b.png

只读实例的TPS如下图图:

52305796de3f486b620eb54573239149.png

只读实例的延迟如下图:

58c58c1be8fc8ae4fb295146e83091ff.png

建议:

排查主实例的写入压力是否正常;如果正常则需要对业务进行优化或者拆分,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值