

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

# 擴展 MemoryDB 叢集
<a name="scaling-cluster"></a>

隨著叢集的需求變更，您可以變更 MemoryDB 叢集中的碎片數量，以決定改善效能或降低成本。我們建議使用線上水平擴展來執行此動作，因為它可允許叢集在擴展程序期間繼續提供請求的服務。

您用來決定重新擴展叢集的可能條件包括下列：
+ **記憶體壓力：**

  如果叢集中的節點遭受記憶體壓力，您可以決定向外擴展，使得您有更多資源能更妥善地存放資料和提供請求的服務。

  您可以監控下列指標來判斷節點是否受到記憶體壓力：*FreeableMemory*、*SwapUsage* 和 *BytesUsedForMemoryDB*。
+ **CPU 或網路瓶頸：**

  如果延遲/傳輸量問題正困擾著您的叢集，您可能需要向外擴展來解決問題。

  您可以監控延遲和傳輸量層級，方法是監控下列指標：*CPUUtilization*、*NetworkBytesIn*、*NetworkBytesOut*、*CurrConnections* 和 *NewConnections*。
+ **您的叢集過度擴展：**

  對叢集的目前需求使得向內擴展不會傷害效能和減少成本。

  您可以監控叢集的使用情況，以判斷是否可以使用下列指標安全地縮減規模：*FreeableMemory*、*SwapUsage*、*BytesUsedForMemoryDB*、*CPUUtilization*、*NetworkBytesIn*、*NetworkBytesOut*、*CurrConnections* 和 *NewConnections*。

**擴展的效能影響**  
使用離線程序擴展時，您的叢集將有一大部分程序會離線，因此無法提供請求的服務。使用線上方法擴展時，因為擴展是運算密集的操作，效能會有一些下降，然後，您的叢集會繼續在整個擴展操作中提供請求的服務。您遭遇到的下降程度取決於您的一般 CPU 使用率和您的資料。

有兩種方式可以擴展您的 MemoryDB 叢集：水平和垂直擴展。
+ 水平擴展可讓您透過新增或移除碎片來變更叢集中的碎片數量。線上重新分片程序允許向內/向外擴展，同時間叢集仍可繼續服務傳入請求。
+ 垂直擴展 - 變更節點類型以調整叢集大小。線上垂直擴展允許向上/向下擴展，同時間叢集仍可繼續服務傳入請求。

如果您要透過向內擴展或向下擴展來減少叢集的大小和記憶體容量，請確保新組態有足夠的記憶體來容納您的資料和引擎額外負荷。