redis的缓存一致性问题
1、redis的缓存一致性问题=缓存中的数据和数据库中的数据如何保证一致性?
一、redis的常用的两种模式
注意以下两种模式,在大并发下,都会存在一定的漏洞。
1.1、双写模式
修改数据库的同时,修改缓存。如果有两个并发同时进行,第一个修改数据库后有延缓(由于各种原因导致的),在这期间第二个修改进行,紧接着第二个的修改缓存进行。导致第一个修改缓存最后执行,导致了脏数据的出现。
1.1.1、双写模式的解决方案一------------>加锁的方式
可以通过加锁的方式,将写数据库和写缓存这两个操作加锁实现。一组 写数据库和写缓存 执行完,才执行第二次。
1.1.2、双写模式的解决方案一------------>加锁的方式
1.2、失效模式
二、精细的解决方案
通过canal来解决,可以省去编码的复杂,只需编写 写数据库的操作即可。因为canal可以主动的去更新redis
三、通过canal来解决
上一篇:
5款热门的远程控制软件,让你事半功倍
下一篇:
测试基础-系统测试包括哪些内容