大厂Redis热点key解决之道
JavaEdge
共 1442字,需浏览 3分钟
·
2021-03-27 18:28
点击上方“JavaEdge”,关注公众号
1 热点key产生原因
1.1 消费的数据>>>生产的数据
比如电商秒杀活动、明星头条微博
大量发布、浏览的热点新闻、热点评论等读多写少场景
1.2 分片的请求量突破单点性能极限
2 热点Key的危害
流量过于集中,突破物理网卡的极限
请求过多,缓存分片服务被打垮
缓存击穿
3 解决方案
3.1 服务端缓存
缺陷
缓存失效,多线程构建缓存问题
缓存丢失,缓存构建问题
脏读
3.2 使用Memcache、Redis
缺陷
内存资源浪费
脏读
3.3 本地缓存
缺陷
需要提前获知热点
缓存容量有限
不一致性时间增长
热点Key遗漏
3.4 随机后缀
不带后缀
不带的后缀的有TTL带后缀
带后缀的没有TTL
后端查询DB更新缓存
查询带后缀返回给调用方
往期推荐
目前交流群已有 800+人,旨在促进技术交流,可关注公众号添加笔者微信邀请进群
喜欢文章,点个“在看、点赞、分享”素质三连支持一下~
评论