Redis与数据库保持一致

参考链接

  1. 先更新数据库,再更新redis

存在漏洞,如果更新Redis失败,仍然会导致不一致

  1. 先删Redis,再更新数据库并同步数据到Redis

存在漏洞,多线程情况下,线程1删除redis后,还是有可能被其他线程读取旧的数据库数据加载到redis当中

  1. 延迟双删, 在2的基础上,更新成功后延迟x秒再删除一遍redis

较好的解决方案,可以避免多线程情况下的问题,但其实还是会存在问题,例如第二次删除也失败,或者延时期间的不一致问题,不过我们一般处理到延迟双删就可以了,极端的场景需要更加细致的处理方案

相关推荐
jiayou641 天前
KingbaseES 表级与列级加密完全指南
数据库·后端
用户3074596982072 天前
Redis 延时队列详解
redis
GBASE2 天前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
烤代码的吐司君2 天前
Redis 数据结构 ZSet, BIT, HyperLogLog,Geo 空间数据
redis·后端
xiezhr2 天前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩3 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3504 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3504 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3504 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库