redis 大key 防坑指南
目录
一、大key危害
二、为什么会引入大key问题
三、举例
四、如何防控
五、发生了大key问题怎么办
六、如何测试阶段暴露大key问题
一、大key危害
redis大key导致redis负载比较高,影响redis的性能
二、为什么会引入大key问题
存入redis数量不可控,容易造成redis大key
三、举例
因为在redis里存储了全量的广告位id,如果某些账号下的广告位过多,就会造成出现redis大key
四、如何防控
1、 业务评估时,评估大key风险。如果存在大key风险,不妨放弃redis
2、添加监控。 redis内存使用率过高报警、redis慢查询、redis大key监控报警
五、发生了大key问题怎么办
需要具体问题具体分析。
可考虑的方案:针对大key做处理,也就是只对广告位数多的账号做处理。 比如,设置广告位基线,超过基线,直接查询DB.
六、如何测试阶段暴露大key问题
依据业务本身特性、 大key问题隐藏程度不同, 暴露的难度也不一。
可考虑的方向:
- 全链路压测
- codediff. 这个需要结合业务特性,综合考虑是否存在大key隐患。