View a markdown version of this page

考量事項 - Amazon ElastiCache

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

考量事項

擴展時對 CPU 使用率的潛在影響

在節點類型之間向上或向下擴展時,請注意與增強 I/O 功能相關的 CPU 使用率潛在影響。對於支援的節點類型,ElastiCache 預設會將網路 I/O 和 TLS 操作卸載至專用執行緒,以利用節點上可用的額外 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 指標:

對 CPUUtilization 指標的影響

CPUUtilization 反映節點上所有核心的彙總 CPU 用量,包括專用 I/O 執行緒。由於增強型 I/O 功能會在這些額外的核心上使用 CPU,CPUUtilization因此 不是引擎實際容量和負載的可靠指標。

EngineCPUUtilization 指標的影響

EngineCPUUtilization 僅測量主要 Redis 或 Valkey 引擎執行緒。當增強型 I/O 功能處於作用中狀態時,網路 I/O 和 TLS 處理等操作會從主執行緒卸載至專用 I/O 執行緒。這表示 EngineCPUUtilization可能會減少,因為主執行緒的工作量較少。 會EngineCPUUtilization準確反映您的實際工作負載容量,以及您的執行個體是否接近其處理限制。

擴展案例

  • 從不支援的節點類型擴展到支援的節點類型:當增強型 I/O 功能在新節點類型上變成作用中時, CPUUtilization可能會隨著專用 I/O 執行緒開始使用其他 CPU 核心而增加。同時, EngineCPUUtilization可能會因為從主要引擎執行緒卸載操作而減少。

  • 在支援的節點類型內向上擴展:其他 CPU 核心可用,可能會隨著 I/O 操作分散到更多資源CPUUtilization而減少。

  • 在支援的節點類型內向下擴展:較少的 CPU 核心可用於處理 I/O 操作,這可能CPUUtilization隨著網路 I/O、TLS 處理和連線處理爭用有限的資源而增加。

建議的監控方法

我們建議您使用 EngineCPUUtilization而非 CPUUtilization進行監控。 會EngineCPUUtilization測量主要引擎執行緒的效能,並準確反映您的執行個體是否接近其處理限制。 CPUUtilization可能會因為增強型 I/O 功能如何使用可用核心的變更而隨引擎版本和節點類型而有所不同,使其成為容量規劃的不可靠指標。