一主一从的原理:
主服务器 >>数据更新 >> 生成二进制日志文件 >> IO线程 >>slave服务线程 >> 中继日志 >>sql 线程 >>从服务器
如下图:
出现延迟的原因是
当服务器读写分离时出现,因为主服务器时并行更新的,而从库是单线程串行更新的,这样当用户量较大的时候,就会出现从库更新的速度跟不上主库更新的速度,下面是一些解决方法
解决延迟:
1)从缓存读取数据
2)提高从库的配置
3)禁用从库二进制日志 _log-slave-updates
4)sync_biglog=1 #接受到更新时立即同步
5)log_salve_update 不让从库写日志
6)强制操作主库
mysql_proxy 数据库中间件