Redis三种缓存读写策略

1. Cache Aside Pattern 旁路缓存模式

1.1 读

1.2 写

1.3 为什么要先更新db再删除cache?

缓存的写入速度是比数据库的写入速度快很多,因此相比于先删除cache后更新db带来数据不一致性问题的概率更小。

1.4 特点

  • 平时使用比较多的一个缓存读写模式
  • 同时维系db 和 cache,以db结果为准
  • 首次请求数据一定不在cache

2. Read/Write Through Pattern 读写穿透

2.1 读

2.2 写

2.3 特点

  • 在 Cache-Aside Pattern 之上进行了封装,cache 服务自己来写入缓存,对客户端是透明的
  • 首次请求数据一定不在cache
  • 把 cache 视为主要数据存储
  • 同步更新 cache 和 db

**3.**Write Behind Pattern 异步缓存写入

3.1 特点

  • 只更新缓存,不直接更新 db
  • 采用异步批量的方式来更新 db
  • 写性能非常高,适合数据经常变化但对数据一致性要求不高的场景
相关推荐
b***65325 小时前
GO 快速升级Go版本
开发语言·redis·golang
百***49005 小时前
Redis-配置文件
数据库·redis·oracle
老纪的技术唠嗑局5 小时前
OceanBase 年度发布会 Hands-on AI Workshop 回顾
数据库
艾体宝IT5 小时前
艾体宝干货 | Redis Python 开发系列#5 高可用与集群部署指南
数据库
3***89195 小时前
开放自己本机的mysql允许别人连接
数据库·mysql·adb
X***C8625 小时前
使用bitnamiredis-sentinel部署Redis 哨兵模式
数据库·redis·sentinel
f***01935 小时前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++
q***23575 小时前
MySQL 篇 - Java 连接 MySQL 数据库并实现数据交互
java·数据库·mysql
2401_837088505 小时前
Redisson的可重入锁
redis
W***95245 小时前
在Spring Boot项目中使用MySQL数据库
数据库·spring boot·mysql