欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

解决MySQL从库延迟问题的几种方法

程序员文章站 2022-06-11 15:27:46
...

1、最简单的,就是对于需要保持一致性的数据,都去读主库。但是对于大数据量的应用,这种方法显然不可行。2、采用同步复制模式(

1、最简单的,就是对于需要保持一致性的数据,都去读主库。但是对于大数据量的应用,这种方法显然不可行。

2、采用同步复制模式(synchronous replication model),MYSQL通过NDB cluster storage engine提供了一种同步复制模式,不过Mysql cluster的稳定性、sync replication的效率、使用限制等等都还是问题。

3、使用负载均衡等技术减轻从库压力,从而减少replication lag的情况(但不能完全避免)。

4、数据库分区(database partitioning),这个我不懂。

5、通过一个id或版本号(global-transaction-id or version),每次写操作时更新这个id,读的时候比较主从库中的这个id来判断主从是否同步,从而决定去读哪个库。

为了快速,使用MEMORY table来存储这个id。可以自己写代码将更新和比较id的操作封装起来,甚至可以hack MYSQL,也可以使用MYSQL Proxy等工具替你来完成这些操作,这样你不用修改你的业务代码。

解决MySQL从库延迟问题的几种方法