每次更新的时候先插入一条 记录status = 0 ,然后开始更新 数据库,再更新缓存,结束后,再update status = 1 , 如果中间发生中断,比如服务器故障,网络中断等,那么在重新恢复后,可以先查数据库,再更新缓存,保证两者的一致性;
一致性应该只是对修改数据时才会有一致性问题
1.单独修改
修改数据时,先更新redis后更改数据库
在修改数据时可能正在读数据,因此需要先更新redis,读取的就是最新的数据,后续更改数据库。
2.并发修改
需要分布式锁,只有先拿到分布式锁的线程才允许更改
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。