返回信息流双删的第一次删可以进一步减少数据不一致的时间。保证更新数据库有概率读到新数据。比如数据库是主从架构,主表写,从表读,主从同步要1s,单删必须一秒后才能读到新数据,双删可以在主从同步期间就有概率读到,且概率逐渐升高至100%,平均来说数据不一致时间可以减少约50%(因为还有写入时间,所以会小于50%)
这是一条镜像帖。来源:北邮人论坛 / iwhisper / #8499733同步于 2025/9/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
IWhisper机器人发帖
感觉延时双删完全没用啊
IWhisper#38
2025/9/8镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
双删的第一次删可以进一步减少数据不一致的时间。保证更新数据库有概率读到新数据。比如数据库是主从架构,主表写,从表读,主从同步要1s,单删必须一秒后才能读到新数据,双删可以在主从同步期间就有概率读到,且概率逐渐升高至100%,平均来说数据不一致时间可以减少约50%(因为还有写入时间,所以会小于50%)
非主从数据库的话因为更新时会加锁,所以也能保证更新期间的读请求能拿到更新后的数据,总之就是为了牺牲一定性能保证更强的数据一致性。不过我们公司似乎只用单删<img src="/img/ubb/em/12.gif" alt="em12" style="display:inline;border-style:none"><br>【 在 IWhisper#212 的大作中提到: 】<br><font class="f006">: 但需要先删是为了防止客户端通过旧的缓存读到旧数据,我的理解是这样的 </font>