如何保证数据库和缓存的一致性?

如何保证数据库和缓存的一致性?

读多写少的场景

  • 采用旁路缓存的策略
  • 读:先查缓存,没有缓存再查数据库,再写入缓存。
  • 写:先更新数据库,再删除缓存。
    **原因:**如果先更新缓存,数据库还没有更新,可能就被其他应用读到脏数据。

高并发的场景

  • 采用延迟双删:先更新数据库,再删除缓存,隔一段时间后,再次删除缓存。
  • 延时后再删一次,可以解决 "读请求把旧数据回写缓存" 的问题。
相关推荐
Nandeska19 小时前
15、基于MySQL的组复制
数据库·mysql
AllData公司负责人19 小时前
AllData数据中台-数据同步平台【Seatunnel-Web】整库同步MySQL同步Doris能力演示
大数据·数据库·mysql·开源
加油,小猿猿19 小时前
Java开发日志-双数据库事务问题
java·开发语言·数据库
山岚的运维笔记20 小时前
SQL Server笔记 -- 第20章:TRY/CATCH
java·数据库·笔记·sql·microsoft·sqlserver
Gain_chance20 小时前
33-学习笔记尚硅谷数仓搭建-DWS层交易域用户粒度订单表分析及设计代码
数据库·数据仓库·hive·笔记·学习·datagrip
清风拂山岗 明月照大江20 小时前
Redis笔记汇总
java·redis·缓存
未来之窗软件服务20 小时前
计算机等级考试—高频英语词汇—东方仙盟练气期
数据库·计算机软考·东方仙盟
lekami_兰20 小时前
MySQL 长事务:藏在业务里的性能 “隐形杀手”
数据库·mysql·go·长事务
JQLvopkk21 小时前
C# 轻量级工业温湿度监控系统(含数据库与源码)
开发语言·数据库·c#
消失的旧时光-19431 天前
第十四课:Redis 在后端到底扮演什么角色?——缓存模型全景图
java·redis·缓存