Redis与数据库保持一致

参考链接

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

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

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

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

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

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

相关推荐
6***S2229 分钟前
SQL Server Management Studio的使用
数据库·oracle·性能优化
合作小小程序员小小店12 分钟前
桌面开发,拼车管理系统开发,基于C#,winform,sql server数据库
开发语言·数据库·sql·microsoft·c#
百***49008 小时前
SQL Server查看数据库中每张表的数据量和总数据量
数据库·sql·oracle
代码or搬砖8 小时前
MyBatisPlus中的常用注解
数据库·oracle·mybatis
盼哥PyAI实验室8 小时前
MySQL 数据库入门第一课:安装、账户、库、表与数据操作详解
数据库·mysql
n***i959 小时前
后端在分布式缓存中的一致性哈希
分布式·缓存·哈希算法
h***593310 小时前
MySQL如何执行.sql 文件:详细教学指南
数据库·mysql
郑重其事,鹏程万里10 小时前
键值存储数据库(chronicle-map)
数据库·oracle
Doro再努力10 小时前
【MySQL数据库09】外键约束与多表查询基础
数据库·mysql
ss27311 小时前
019:深入解析可重入互斥锁:原理、实现与线程安全实践
java·数据库·redis