主从同步延迟原因
当数据库有较大的更新并发操作时,可能会导致该问题。因为从库里读取binlog的线程仅有一个,当某个sql在从库上执行的时间稍长,或者由于某个sql要进行锁表就会导致主从延迟,主库的sql大量积压,未被同步到从库里,这就导致了主从不一致,也就是主从延迟
解决方案
1.写操作后的读操作发给主库
注册账号完成时,登录时读取账号的读操作也发给数据库主库,这种方式和业务强绑定,对业务的侵入和影响较大。
2.读从库失败后再读一次主库(二次读取)
对api进行封装,会有很多二次读取,会增加主库压力,主库崩溃(黑客暴力破解)
3.非关键业务全部指向主库,非关键业务采用读写分离