商品缓存方案改进
2020-07-06 10:17:14 2 举报
商品缓存设计
作者其他创作
大纲/内容
binlog
PCS
PRS
继承拼装
getstoreskus
为空或者失效同步穿透
更新缓存数据
MYSQL
没有直接穿透
JIMDB 1打平结构
category
异步更新
判定返回数据状态
写数据
未过期返回 J1的数据
同步查
直接返回过期数据
过期未失效
jimdb1数据更新带上时间戳,通过跟系统当前时间对比来判断数据的过期于失效
缓存的两个时间过期时间:1、用于补偿消息丢失等各种原因带来的小部分不一致。过期后触发异步更新,好处是避免穿透带来的抖动。2、过期时间异步更新的机制会预热和jimdb2一同使用的jvm缓存,在应急的时候可以随时切换的jimdb2,实现性能提升的同时,也实现了双集群的热备失效时间:1、用于触发同步更新,确保接口不会返回超过失效时间的数据。2、可使用同步穿透jimdb2解决刷数据问题。这两个时间要通过DUCC可随时调整
监听变化消息
PRS-PROD
接binlog更新缓存并发送变化消息
JVM缓存
直接返回过期数据异步把J2数据更新至J1
store_sku
C端请求
加sku白名单,白名单内的缓存不过期
JIMDB 2继承结构
消息反查
写变化数据
PRS-MQ
返回带更新时间戳的数据
0 条评论
下一页