缓存数据不一致和并发竞争怎么处理?
24-05-24 11:05
1334
0
七大缓存经典问题的第四个问题是数据不一致。同一份数据,可能会同时存在 DB 和缓存之中。那就有可能发生,DB 和缓存的数据不一致。如果缓存有多个副本,多个缓存副本里的数据也可能会发生不一致现象。
原因分析
不一致的问题大多跟缓存更新异常有关。比如更新 DB 后,写缓存失败,从而导致缓存中存的是老数据。另外,如果系统采用一致性 Hash 分布,同时采用 rehash 自动漂移策略,在节点多次上下线之后,也会产生脏数据。缓存有多个副本时,更新某个副本失败,也会导致这个副本的数据是老数据。
业务场景
导致数据不一致的场景也不少。如下图所示,在缓存机器的带宽被打满,或者机房网络出现波动时,缓存更新失败,新数据没有写入缓存,就会导致缓存和 DB 的数据不一致。缓存 rehash 时,某个缓存机器反复异常,多次上下线,更新请求多次 rehash。这样,一份数据存在多个节点,且每次 rehash 只更新某个节点,导致一些缓存节点产生脏数据。
-
网页导航模板
425 0 21-06-04 -
PDF派_免费好用的PDF在线工具
PDF派有几十个强大的PDF在线工具,无限次使用,永久免费,没有注册入口,人人都是VIP!PDF派是CleverPDF品牌专为中国地区用户而建立的网站... 923 0 25-01-14 -
爱靓女小程序源码带后台
小程序demo1、将php文件夹的文件,放到服务器跟目录,修改你服务器上的数据库名称,用户名密码。2、将data文件下的db.sql数据导入你的数据... 952 0 24-06-02 -
编程之美 微软技术面试心得
自计算机与软件出现以来,在近半个世纪里,软件开发所能衍生出的无限创意,深深吸引着全世界的青年。在二进制的世界里,这帮年轻的程序员充... 963 0 24-05-24 -
微信读书限制非会员,6招轻松破解导入上限
微信读书作为一款免费、全平台,还支持云同步的电子书阅读器,一直被广为推荐但现在「非会员」每个月只能免费导入 3 本书,对于一些书虫... 1073 0 25-04-27 -
微软竟然出过这么多手机App
微软开发的那些冷门移动端APP,除了众所周知的OneDrive/OneNote/Outlook/微软清单/微软桌面/微软翻译...看看下面这些应用你还知道哪些... 701 0 25-04-27 -
全解密无授权影视小程序电影小程序
环境php7.0 — fileinfo–redis mysql5.6 nginx 1.18添加站点上传后端文件后端文件修改/wxapi/config/dbs.php后端文件修改/application/database.php设置ssl设置maccms伪静态 465 0 21-07-05 -
如何快速注册一个美国区Apple ID?
由于中国国内政策原因,你可能需要在美国地区或者海外的苹果App Store下载国内无法下载的应用,比如 Shadowrocket(小火箭),Tik Tok(... 1292 0 24-05-10
发表我的评论
共0条评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~