Mysql读写分离相关问题

  1. 一、为什么Mysql要读写分离
  2. 二、如何实现Mysql的读写分离,主从复制的原理
  3. 三、如何解决主从同步的延时问题

一、为什么Mysql要读写分离

场景:
场景

什么情况下缓存读不到数据

  • 缓存刚加上去的时候
  • 缓存的内存塞满了

二、如何实现Mysql的读写分离,主从复制的原理

原生就支持主从复制

enter description here

问题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" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏