- 你们搭建数据库主从复制的目的有哪些
容灾使用,用于故障切换
业务需要,进行读写分离减少主库压力
- 搭建了主从同步后会有同步延迟问题,为什么会有同步延迟问题,怎么解决?
保证性能第一情况下,不能百分百解决主从同步延迟问题,只能增加缓解措施。
现象:主从同步,大数据量场景下,会发现写入主库的数据,在从库没找到。
原因:
1、主从复制是单线程操作,当主库TPS高,产生的超过从库sql线程执行能力
2、从库执行了大的sql操作,阻塞等待
3、服务器硬件问题,如磁盘,CPU,还有网络延迟等
解决办法:
1、业务需要有一定的容忍度,程序和数据库直接增加缓存,降低读压力
2、业务适合的话,写入主库后,再写缓存,读的时候可以读缓存,没命中再读从库
3、读写分离,一主多从,分散主库和从库压力
4、提高硬件配置,比如使用SSD固态硬盘、更好的CPU和网络
5、进行分库分表,减少单机压力