

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

# 應監控哪些指標？
<a name="metrics.whichshouldimonitor"></a>

下列 CloudWatch 指標提供 MemoryDB 效能的良好洞見。在大多數的案例中，我們建議您為這些指標設定 CloudWatch 警示，讓您可以在發生效能問題前先採取修正動作。

**Topics**
+ [CPUUtilization](#metrics-cpu-utilization)
+ [EngineCPUUtilization](#metrics-engine-cpu-utilization)
+ [SwapUsage](#metrics-swap-usage)
+ [移出](#metrics-evictions)
+ [CurrConnections](#metrics-curr-connections)
+ [記憶體](#metrics-memory)
+ [網路](#metrics-network)
+ [Latency (延遲)](#metrics-latency)
+ [複寫](#metrics-replication)

## CPUUtilization
<a name="metrics-cpu-utilization"></a>

此為主機層級指標，以百分比報告。如需詳細資訊，請參閱[主機層級指標](metrics.HostLevel.md)。

 對於具有 2 個或以下 vCPU 的小型節點類型，請使用 `CPUUtilization ` 指標來監控工作負載。

一般而言，我們建議您將閾值設為您可用 CPU 的 90%。由於 Valkey 和 Redis OSS 是單執行緒，實際閾值應計算為節點總容量的一部分。例如，假設您使用擁有二核心的節點類型。在此情況下，CPUUtilization 的閾值將為 90/2 或 45%。若要尋找節點類型擁有的核心 (vCPUs) 數量，請參閱 [MemoryDB 定價](https://aws.amazon.com/memorydb/pricing/?p=ps)。

您需要根據您正在使用的節點中的核心數量來判斷自己的閾值。如果您超過此閾值，且主要工作負載來自讀取請求，請新增僅供讀取複本來擴展叢集。如果主要工作負載來自寫入請求，我們建議您新增更多碎片，將寫入工作負載分散到更多主節點。

**提示**  
`CPUUtilization`您或許可以使用指標 來報告 Valkey 或 Redis OSS 引擎核心上的用量百分比`EngineCPUUtilization`，而不是使用主機層級指標 。若要查看此指標是否在您的節點上可用，以及如需詳細資訊，請參閱 [ MemoryDB 的指標](https://docs.aws.amazon.com/memorydb/latest/devguide/metrics.memorydb.html)。

對於具有 4vCPUs或更多的較大節點類型，您可能需要使用 `EngineCPUUtilization` 指標，該指標會報告 Valkey 或 Redis OSS 引擎核心上的用量百分比。若要查看此指標是否在您的節點上可用，如需詳細資訊，請參閱 [ MemoryDB 的指標](https://docs.aws.amazon.com/memorydb/latest/devguide/metrics.memorydb.html)。

## EngineCPUUtilization
<a name="metrics-engine-cpu-utilization"></a>

對於具有 4vCPUs或更多的較大節點類型，您可能需要使用 `EngineCPUUtilization` 指標，該指標會報告 Valkey 或 Redis OSS 引擎核心上的用量百分比。若要查看此指標是否在您的節點上可用，以及如需詳細資訊，請參閱 [ MemoryDB 的指標](https://docs.aws.amazon.com/memorydb/latest/devguide/metrics.memorydb.html)。

## SwapUsage
<a name="metrics-swap-usage"></a>

此為主機層級指標，以位元組報告。如需詳細資訊，請參閱[主機層級指標](metrics.HostLevel.md)。

如果 `FreeableMemory` CloudWatch 指標接近 0 （即低於 100MB)，或`SwapUsage`指標大於`FreeableMemory`指標，則節點可能會受到記憶體壓力。

## 移出
<a name="metrics-evictions"></a>

這是引擎指標。建議您根據應用程式需求，親自判斷此指標的警示閾值。

## CurrConnections
<a name="metrics-curr-connections"></a>

這是引擎指標。建議您根據應用程式需求，親自判斷此指標的警示閾值。

*CurrConnections* 的數字增加，可能表示您的應用程式發生問題。您需要調查應用程式行為才能處理此問題。

## 記憶體
<a name="metrics-memory"></a>

記憶體是 Valkey 和 Redis OSS 的核心層面。為避免資料遺失以及因應資料集的未來成長而調整，了解叢集的記憶體使用率是必要的。有關節點記憶體使用率的統計資料，請參閱 [INFO](https://valkey.io/commands/info) 命令的記憶體區段。

## 網路
<a name="metrics-network"></a>

叢集網路頻寬容量的決定因素之一，是您選取的節點類型。如需節點網路容量的詳細資訊，請參閱 [Amazon MemoryDB 定價](https://aws.amazon.com/memorydb/pricing/)。

## Latency (延遲)
<a name="metrics-latency"></a>

延遲指標`SuccessfulWriteRequestLatency`和`SuccessfulReadRequestLatency`測量 Valkey 引擎的 MemoryDB 回應請求所需的總時間。

**注意**  
在 Valkey 用戶端上啟用 CLIENT REPLY 的情況下使用 Valkey 管道時，可能會發生 `SuccessfulWriteRequestLatency`和 `SuccessfulReadRequestLatency`指標的膨脹值。Valkey pipeline 是一種透過一次發出多個命令來改善效能的技術，無需等待對每個個別命令的回應。為了避免膨脹值，建議您使用 [CLIENT REPLY OFF](https://valkey.io/commands/client-reply/) 將 Redis 用戶端設定為管道命令。

## 複寫
<a name="metrics-replication"></a>

遭複寫的資料量可透過 `ReplicationBytes` 指標顯示。您可以`MaxReplicationThroughput`針對複寫容量輸送量進行監控。建議在達到最大複寫容量輸送量時新增更多碎片。

`ReplicationDelayedWriteCommands` 也可以指出工作負載是否超過最大複寫容量輸送量。如需 MemoryDB 中複寫的詳細資訊，請參閱[了解 MemoryDB 複寫](https://docs.aws.amazon.com/memorydb/latest/devguide/replication.html)