多级缓存以及热点监测

整体架构

请求先经过nignix或者gateway进行路由转发到无状态的服务器上,然后local cache, 分布式cache, db三层架构,双层缓存。

注意local cache的TTL需要大于 redis的TTL, 因为数据一致性的问题,当然这种情况不一定可以保障数据的实时一致性,但是可以保障TTL的最终一致性得到保障。

缓存查询不存在问题在多层架构下得到了放大,如何去解决这个问题?本质上还是缓存穿透问题,boomfilter

和传统分布式缓存一样还是还是采用标准的写db, 删缓存。

但是多机器之间的一致性可以利用mq模拟ringbus实现MESI协议来实现一致性的保障

利用客户端操作,以及利用etcd进行一些注册和配置中心的管理

热点key带来的影响

通过etcd推送:链路长,资源节省

通过长连接: 时间短,资源占用多

事件驱动通知:callback,让用户决定如何处理,限流还是扩容之类的,还是短时间不过期。

相关推荐
源代码•宸7 小时前
Redis 攻略(Redis Object)
数据库·redis·后端·缓存·字符串·哈希表·type
heartbeat..7 小时前
Redis常见问题及对应解决方案(基础+性能+持久化+高可用全场景)
java·数据库·redis·缓存
Marshmallowc7 小时前
强缓存失效了怎么办?深度解析浏览器内存缓存与硬盘缓存的存储逻辑
http·缓存·浏览器原理
2501_907136827 小时前
批量重命名工具 Double12 Renamer -可正则、翻译
数据库·redis·缓存
先跑起来再说8 小时前
从 Redis 缓存设计谈起:如何避免缓存击穿、穿透与雪崩
redis·缓存·memcached
少许极端9 小时前
Redis入门指南(八):从零到分布式缓存-集群机制、缓存机制、分布式锁
redis·分布式·缓存·分布式锁
what丶k16 小时前
深入解析Redis数据持久化:RBD机制原理、实操与生产最佳实践
数据库·redis·缓存
Dreamboat-L19 小时前
Redis及其两种持久化技术详解
数据库·redis·缓存
lead520lyq20 小时前
Golang本地内存缓存
开发语言·缓存·golang
三水不滴20 小时前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存