Mysql读写分离相关问题
一、为什么Mysql要读写分离
场景:
什么情况下缓存读不到数据
- 缓存刚加上去的时候
- 缓存的内存塞满了
二、如何实现Mysql的读写分离,主从复制的原理
原生就支持主从复制
问题1:从库同步数据的过程是串行化的,也就是说主库上并行的操作,从库是串行执行。所以高并发场景下会有数据延时的问题。
注释:主库写并发1000/s,从库延时几sm、如果是2000/s,从库延时几十ms
问题2:主库宕机,数据没有同步到从库,有可能造成数据丢失
mysql提供两种解决方案:
- 半同步复制,解决数据丢失问题。强行ack,类似于三次握手概念 (semi-sync)
- 并行复制,解决数据延时问题。
三、如何解决主从同步的延时问题
- show status 命令可以通过 Sendconds_Behind_Master 可以看到主从复制延时落后的几ms
- 可以使用mysql的并行复制
- 分库来添加多个主库实现降低延时的目的
- 如果必须要同步的话,就需要采用中间件来强制读取主库来实现数据的强一致性
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 18846433665@163.com
文章标题:Mysql读写分离相关问题
文章字数:321
本文作者:Xu Shengcai
发布时间:2019-10-30, 00:43:25
最后更新:2019-10-30, 12:09:24
原始链接:http://yoursite.com/2019/10/30/Mysql读写分离相关问题/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。