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

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

读多写少的场景

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

高并发的场景

  • 采用延迟双删:先更新数据库,再删除缓存,隔一段时间后,再次删除缓存。
  • 延时后再删一次,可以解决 "读请求把旧数据回写缓存" 的问题。
相关推荐
.Eyes1 小时前
OceanBase 分区裁剪(Partition Pruning)原理解读
数据库·oceanbase
MrZhangBaby2 小时前
SQL-leetcode— 2356. 每位教师所教授的科目种类的数量
数据库
一水鉴天2 小时前
整体设计 之定稿 “凝聚式中心点”原型 --整除:智能合约和DBMS的在表层挂接 能/所 依据的深层套接 之2
数据库·人工智能·智能合约
翔云1234563 小时前
Python 中 SQLAlchemy 和 MySQLdb 的关系
数据库·python·mysql
孙霸天3 小时前
Ubuntu20系统上离线安装MongoDB
数据库·mongodb·ubuntu·备份还原
Java 码农3 小时前
nodejs mongodb基础
数据库·mongodb·node.js
TDengine (老段)3 小时前
TDengine IDMP 运维指南(4. 使用 Docker 部署)
运维·数据库·物联网·docker·时序数据库·tdengine·涛思数据
TDengine (老段)3 小时前
TDengine IDMP 最佳实践
大数据·数据库·物联网·ai·时序数据库·tdengine·涛思数据
Java小混子4 小时前
【Redis】缓存和分布式锁
redis·分布式·缓存
彬彬醤4 小时前
Mac怎么连接VPS?可以参考这几种方法
大数据·运维·服务器·数据库·线性代数·macos·矩阵