You need to enable JavaScript to run this app.
文档中心
缓存数据库 Redis 版

缓存数据库 Redis 版

复制全文
下载 pdf
Key 分析
性能问题和解决方案
复制全文
下载 pdf
性能问题和解决方案
由于数据库使用不正确、业务规划不合理等情况都会产生热 key 和大 key,如果未能及时发现并处理热 key 和大 key,可能会导致数据库性能下降,严重影响业务。缓存数据库 Redis 版支持性能分析功能,能够帮助及时发现并分析数据库中的热 key 和大 key 详情,为您优化热 key 和大 key 提供数据参考。​
判断标准​
  • 大 key​
  • 大 key 通常含有较大数据量或大量元素(如成员、列表数等)。缓存数据库 Redis 版的大 key 判断标准如下:​
  • 对于 String 类型的数据,若内存占用量大于 10 KiB,则被认为是大 key。​
  • 对于非 String 类型的数据,若元素个数超过 5000 个,则被认为是大 key。​
  • 热 key​
  • 热 key 的被访问次数通常显著高于其他 key。缓存数据库 Redis 版的热 key 判断标准如下:​
  • 在查询时间范围内(如过去 1 天),对数据库内所有访问次数进行采样,默认采样频率为从每 100 次访问中采样一次(如第 100 次、200 次),若该采样所对应的 key 的访问次数大于 3000,则被认为是热 key。​
说明​
  • 若您需要通过增加采样频率(如从每 50 次访问中采样一次)来提高热 key 判断精度,请提交工单联系技术支持。​
  • 增加采样频率可以提高数据精度,但同时会在一定程度上带来性能压力,建议您选择合适的采样频率,在保证数据精度的同时尽量减少对实例性能的影响。​
产生的原因与带来的问题​
​
key 类型​
产生的原因​
带来的问题​
大 key​
  • 业务规划不足,将 Redis 应用在不适合的场景下,或数据结构设计不合理,例如未对 key 进行拆分,导致某些 key 的 Value 过大或包含的元素过多。​
  • 数据清理策略设置考虑不周,例如未能定期清理无效数据,或未错开大 key 的缓存删除时间。​
  • Redis 阻塞,访问变慢:由于 Redis 单线程的特性,如果某个大 key 相关的操作 (如访问或删除大 key)耗时较久,会严重影响后面的请求,甚至导致 Redis 阻塞,同时也会影响主从复制。​
  • 内存占用不均,实例性能下降:在已启用分片集群的 Redis 实例中,存在大 key 的节点会占用较多内存,集群实例中的内存无法实现均衡占用,易出现内存容量瓶颈,导致实例整体性能下降。​
  • 影响其他服务或应用:大 key 意味着 Redis 占用服务器的网络带宽也较多,除了 Redis 自身性能会变差,还会影响服务器上其他服务或应用。​
热 key​
出现预期外的热点数据(如秒杀商品,热搜话题等),对单个 key 的访问过于集中或访问量激增,容易导致热 key 问题,常见于读多写少的场景。​
  • 流量集中,消耗 CPU 和网络资源:对某一热点 key 的请求流量过度集中,会消耗占用大量 CPU 和网络资源,出现实例负载不均衡数据倾斜问题,导致其他请求超时无法正常访问。​
  • 请求超量,实例宕机业务雪崩:短时间内热 key 访问量激增,超出 Redis 实例的处理上限,会导致实例宕机服务不可用,容易出现缓存击穿甚至雪崩,拖垮后端数据库服务。​
​
解决方案​
缓存数据库 Redis 版支持性能分析功能,能够帮助您在使用 Redis 过程中,实时查看数据库中的大 key 和热 key 详情,同时也支持查看大 key 和热 key 的历史详情。详细操作步骤,请参见大 key 分析和热 key 分析。​
​
最近更新时间:2026.03.10 20:51:31
这个页面对您有帮助吗?
有用
有用
无用
无用