管理 Azure 托管 Redis 的 CPU 利用率(预览版)

重要

Azure Cache for Redis宣布其所有 SKU 的停用时间表。 建议尽快将现有Azure Cache for Redis实例移动到Azure托管 Redis。

迁移指南:

有关停用的更多详细信息:

数据值大小

客户端应用程序的设计决定了是要存储大量的较小值,还是存储少量的较大值。 从 Redis 服务器的角度来看,值越小,性能就越好。 建议将值大小保留在 100 kB 以下。

如果设计要求在 Azure 托管 Redis 中存储更大的值(预览版),则 CPU 使用率将更高。 在这种情况下,可能需要使用更高的性能层来确保 CPU 使用率不会限制吞吐量。

即使 AMR 实例具有足够的 CPU 容量,更大的值也会增大延迟,因此请遵循配置适当的超时中的指导。

避免出现客户端连接高峰

创建和关闭连接对于 Redis 服务器而言是一项高开销的操作。 如果客户端应用程序在短时间内创建或关闭过多的连接,可能会给 Redis 服务器造成负担。

如果您要实例化许多客户端实例以便同时连接到 Redis,请考虑分散创建新连接的时间,以避免已连接客户端数量的陡增。

内存压力

如果服务器上的内存使用率过高,则系统会更可能需要将数据分页到磁盘,导致页面错误,使系统运行速度明显变慢。

避免长时间运行的命令

Redis 服务器是单线程系统。 长时间运行的命令可能导致客户端出现延迟或超时,因为服务器在忙于处理长时间运行的命令时无法响应任何其他请求。 有关详细信息,请参阅 排查 Azure Cache for Redis 服务器端问题

监视 CPU 利用率

添加对服务器负载的监视,以确保在服务器负载过高时收到通知。 监视可帮助你了解应用程序约束。 然后,可以主动采取措施来缓解问题。 建议尝试使服务器负载保持在 80% 以下,以避免对性能造成负面影响。 服务器负载持续超过 80% 可能会导致未计划的切换。 Azure托管 Redis (预览版)公开 CPU 指标,以指示 AMR 实例节点上的 CPU 使用率。 还建议检查 CPU 指标的最大峰值而不是平均值,因为即使是短暂的峰值也会触发故障转移和命令超时。

后续步骤