Redis

Redis 从应用到系统内核:


Redis_第1张图片
从应用到系统内核

Redis的几个话题

Redis_第2张图片
Redis的几个话题

Redis删除策略的比较

Redis_第3张图片
Redis删除策略

I/O 模型

Redis_第4张图片
Blocking I/O
Redis_第5张图片
多路复用
Redis_第6张图片
Reactor Pattern

数据库和缓存双写一致性

Redis_第7张图片
读取缓存
Redis_第8张图片
更新策略

如何处理删除缓存失败的问题?

Redis_第9张图片
方案-1

(1)更新数据库数据;

(2)缓存因为种种问题删除失败

(3)将需要删除的key发送至消息队列

(4)自己消费消息,获得需要删除的key

(5)继续重试删除操作,直到成功

注意:对业务代码有侵入

Redis_第10张图片
方案-2

(1)更新数据库数据

(2)数据库会将操作信息写入binlog日志当中

(3)订阅程序提取出所需要的数据以及key

(4)另起一段非业务代码,获得该信息

(5)尝试删除缓存操作,发现删除失败

(6)将这些信息发送至消息队列

(7)重新从消息队列中获得该数据,重试操作。

注:对业务代码有侵入

Canal订阅mysql binlog中间件

Redis集群

https://blog.csdn.net/qq_25484147/article/details/78641392

你可能感兴趣的:(Redis)