

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

# MemoryDB 多区域扩缩
<a name="multi-Region.Scaling"></a>

随着集群需求的变化，您可能决定通过更改节点类型或 MemoryDB 集群中的分片数量来提升性能或降低成本。扩展 MemoryDB 多区域集群会同时扩缩其中的所有区域集群。MemoryDB 多区域集群支持在线重分片。MemoryDB 多区域集群不支持离线重分片。

您决定重新调节集群的情况包括以下几种：
+ **记忆压力**

  如果您的区域集群中的节点存在内存压力，您可能会决定进行横向扩展或纵向扩展，以获得更多资源来更好地存储数据和处理请求。

  您可以通过监控以下指标来确定您的节点是否承受内存压力： FreeableMemory、 SwapUsage、 BytesUsedForMemory DB 和 MultiRegionClusterReplicationLag 
+ **CPU 或网络瓶颈**

  如果 latency/throughput 问题困扰着您的集群，则可能需要向外扩展或向上扩展以解决问题。

  您可以通过监控以下指标来监控延迟和吞吐量水平：`CPUUtilization`、`NetworkBytesIn`、` NetworkBytesOut`、`CurrConnections`、` NewConnections`、` and MultiRegionClusterReplicationLag`。
+ **您的集群规模过大**

  当前集群的需求使得横向缩减或纵向缩减不会损害性能并能降低成本。

您可以使用以下指标监控集群的使用情况，以确定是否可以安全地缩减或缩小规模： FreeableMemory SwapUsage BytesUsedForMemory、 CPUUtilization、 NetworkBytesIn、 NetworkBytesOut、 CurrConnections、 NewConnections 和 MultiRegionClusterReplicationLag 

MemoryDB 多区域集群有两种扩展方式：水平扩缩和垂直扩缩。
+ 水平扩缩您通过添加或删除分片来更改 MemoryDB 多区域集群中的分片数量。在线重新分片过程允许在区域集群继续为传入请求提供服务的 in/out 同时进行扩展。
+ 纵向扩展通过更改节点类型来调整 MemoryDB 多区域集群的规模。在线垂直扩展允许在区域集群继续为传入请求提供服务的 up/down 同时进行扩展。

扩展默认使用“协调式”更新策略。这意味着要么所有区域集群成功扩展，要么所有区域集群均不扩展。

横向扩展操作也支持“非协调式”更新策略。这意味着某些区域集群可能成功横向扩展，而某些区域集群的横向扩展尝试可能失败。如果某个区域集群横向扩展成功，则所有其他区域集群会继续重试横向扩展，直到所有其他横向扩展也都成功。

如果所有区域集群均未能成功横向扩展，则多区域集群的“非协调式”横向扩展将失败。

**注意**  
当区域集群在不同时间进行横向扩展时，“非协调式”横向扩展可能导致区域集群之间长时间存在容量不平衡。这可能会导致 MultiRegionClusterReplicationLag 指标增加，而区域集群数据可能会长期存在差异。

MemoryDB 多区域集群的区域集群可以配置不同数量的副本节点，但区域集群中的所有分片必须具有相同数量的副本节点。

如果您要通过缩小或缩小规模 MemoryDB 多区域集群的大小和内存容量，请确保新配置有足够的内存和可用 IPs 空间来存放您的数据、足够的引擎开销，并且区域集群的 MultiRegionClusterReplicationLag 指标在几秒或一分钟范围内。

您可以使用、和 MemoryDB API 水平和垂直扩展 MemoryDB 多区域集群。 AWS 管理控制台 AWS CLI