

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 注意事项
<a name="Scaling-considerations"></a>

## 扩展时对 CPU 利用率的潜在影响
<a name="Scaling-considerations-cpu"></a>

在节点类型之间向上或向下扩展时，请注意与增强 I/O 功能相关的对 CPU 利用率的潜在影响。对于[支持的节点类型](https://docs.aws.amazon.com/AmazonElastiCache/latest/dg/CacheNodes.SupportedTypes.html#CacheNodes.CurrentGen)，默认情况下，将网络 I/O 和 TLS 操作 ElastiCache 卸载到专用线程，这些线程利用节点上可用的额外 CPU 内核。这些功能的可用性取决于您的引擎版本和节点类型：
+ **增强 I/O （Redis 5.0.6\+）：**网络 I/O 在专用线程上处理，在支持的节点类型上利用额外的 CPU 内核。
+ **TLS 卸载（Redis 6.2.5\+）：**TLS 操作被卸载到 I/O 线程，进一步利用可用的 CPU 内核。
+ **增强的 I/O 多路复用（Redis OSS 7.0.4\+ 或 Valkey 7.2.6\+）：多个客户端连接多路传输到线程上 I/O ，从而**提高吞吐量并优化可用内核的 CPU 使用率。

这些功能将处理分配给节点上可用的额外 CPU 内核，这会通过以下方式影响 CPU 指标：

**对 CPU 利用率指标的影响**  
`CPUUtilization`反映节点上所有内核（包括专用 I/O 线程）的聚合 CPU 使用率。由于增强 I/O 功能会消耗这些额外内核上`CPUUtilization`的 CPU，因此并不能可靠地指示引擎的实际容量和负载。

**对 engineCPU 利用率指标的影响**  
`EngineCPUUtilization`仅测量 Redis 或 Valkey 主引擎线程。当增强 I/O 功能处于活动状态时，诸如网络 I/O 和 TLS 处理之类的操作将从主线程转移到专用 I/O 线程。这意味着`EngineCPUUtilization`可能会减少，因为主线程的工作量较少。 `EngineCPUUtilization`准确反映您的实际工作负载容量以及您的实例是否接近其处理限制。

**扩展场景**
+ **从不支持的节点类型扩展到支持的节点类型：**当增强 I/O 功能在新节点类型上处于活动状态时，随着专用 I/O 线程开始使用额外的 CPU 内核，`CPUUtilization`可能会增加。同时，随着操作从主引擎线程中卸载，`EngineCPUUtilization`可能会减少。
+ **在支持的节点类型内向上扩展：**提供更多的 CPU 内核，`CPUUtilization`随着 I/O操作分布在更多资源上，CPU 内核可能会减少。
+ **在支持的节点类型内缩小规模：**可用于处理 I/O 操作的 CPU 内核较少，`CPUUtilization`随着网络 I/O、TLS 处理和连接处理争夺有限的资源，这可能会增加。

**推荐的监测方法**

我们建议使用`EngineCPUUtilization`而不是`CPUUtilization`用于监控。 `EngineCPUUtilization`测量主引擎线程的性能并准确反映您的实例是否接近其处理限制。 `CPUUtilization`由于增强 I/O 功能利用可用内核的方式发生了变化，因此可能因引擎版本和节点类型而异，这使其成为容量规划的不可靠指标。