MySQL - 主从复制为什么会出现延迟

2018-11-21  本文已影响0人  鱼和熊掌o

MySQL默认的主从复制是基于binary log来实现的. 当有数据写入时 通过IO线程 将日志同步至Slave的relay log 而后Slave应用Relay log中的内容实现'主从复制' -- 如此即可知道 此复制模式天然的就会存在数据延迟

而在当Master上有一个大事务时(DDL等) Slave的延迟时间就会很长. 这是因为理论上同一个操作在Master上执行多久 在Slave上也会消耗同样的时间 因此 在当Slave正在应用某个大事务之时 为了保证事务的完整性 这些执行时间很长的操作会占用某个同步线程(slave_parallel_workers) 协调线程会遇到复制同步点 导致后续的其他操作不能发往其他空闲的slave_parallel_workers线程 从而出现了高延迟的状况

上一篇下一篇

猜你喜欢

热点阅读