redis与mysql怎样保证数据一致

关注:10 发布时间:2022-01-24 13:04:10

1、技术的整体思维。

mysql binlog增量订阅将消息队列增量数据更新消耗到redis

1)读取redis:热数据基本在redis中

2)写mysql:增删改就是操作mysql

redis与mysql怎么保证数据一致

3.更新redis数据:mysq操作binlog更新到redis

2.redis已更新。

1)数据操作主要分为两个块:

一个是满量(所有数据一次写入redis)

一种是增量式(实时更新)

这里的增量是指mysql的更新、插入和延迟变更数据。

2)读取binlog后进行分析,利用消息队列推送更新各站redis缓存数据。

这样,一旦mysql中出现写入、更新、删除等新操作,就可以将binlog相关的消息推送到redis,然后redis根据binlog中的记录更新redis。

这个机制其实和mysql的主从备份机制很像,因为mysql的主从备份也是通过binlog实现数据一致性的。

这里可以组合使用canal(阿里的一个开源框架),通过它可以订阅mysql binlog,canal模仿mysql从数据库的备份请求,使得redis的数据更新达到同样的效果。

最新加入知识

猜你喜欢

微商行业知识频道

微商货源频道入口