首页 > 数据库技术 > 详细

MySQL和Redis数据一致性问题

时间:2020-04-10 23:44:36      阅读:90      评论:0      收藏:0      [点我收藏+]

背景

  在高并发的业务场景下,数据库的性能瓶颈往往是用户并发访问过大造成的,所以会有个Redis做个缓冲。

case

  一、A写,B读,

    写:1.淘汰cache 2.写操作(由于各种原因消耗了1s) 3.更新cache

    读:1.读cache 2.读DB 3更新cache

    在成功写入之前就读取了,会导致读取到脏数据,cache不是最新的数据

  二、主从分离

    同理,在有主从延迟这个过程中,会让读操作读取到脏数据

 

解决:

  1. 淘汰机制,每次写入一个数据后,隔几秒去淘汰一次缓存

  2.binlog,Redis根据binlog中的记录对Redis进行更新

 

MySQL和Redis数据一致性问题

原文:https://www.cnblogs.com/xingkongyihao/p/12676825.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!