【Azure Redis】Redis服务负载达到100%后的影响及有何优化方法

发布时间 2023-07-20 22:34:00作者: 路边两盏灯

问题描述

Redis服务负载达到100%后的影响及有何优化方法

 

问题解答

Redis的负载达到100% 意味着 Redis 服务器繁忙,无法跟上请求,导致客户端发送出来的请求超时。

常规情况下有一下几种情况可以导致这个问题:

1) 请求量变大达到服务上限

2) 执行默写时间复杂度高的指令,如KEYS

3)   Redis中存放的单个键的大小太大,官方文档建议键值大小为100KB

4) Redis服务的维护操作

 

当遇见以上问题,可以参考的优化方法有:

  • 对于Key Size 比较大的场景,建议您适当调整maxmemory-reserved的配置。  
  • 通过对Redis 进行升级来提高Redis Server的性能来满足业务需求。
  • 对ServerLoad 性能指标进行监控,当ServerLoad 达到80%时触发告警,提醒并手动介入调查Redis 的使用情况。

 

参考资料

管理 Azure Cache for Redis 的服务器负载 : https://learn.microsoft.com/zh-cn/azure/azure-cache-for-redis/cache-best-practices-server-load

 

排查 Azure Cache for Redis 服务器问题 : https://learn.microsoft.com/zh-cn/azure/azure-cache-for-redis/cache-troubleshoot-server#high-server-load

Redis 内存管理:https://learn.microsoft.com/zh-cn/azure/azure-cache-for-redis/cache-best-practices-memory-management#configure-your-maxmemory-reserved-setting