

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

# 选择部署选项
<a name="WhatIs.deployment"></a>

Amazon ElastiCache 有两个部署选项：
+ 无服务器缓存
+ 基于节点的集群

有关两者支持的命令的列表，请参阅[支持的和限制的 Valkey、Memcached 和 Redis OSS 命令](SupportedCommands.md)。

**无服务器缓存**

Amazon ElastiCache Serverless 简化了缓存的创建并可即时扩展以支持客户要求最苛刻的应用程序。借 ElastiCache 助 Serverless，您可以在不到一分钟的时间内创建高度可用且可扩展的缓存，无需预置、规划和管理集群容量。 ElastiCache Serverless 自动在三个可用区之间冗余存储数据，并提供 99.99% 的可用性服务级别协议 (SLA)。Valkey 或 Redis OSS 基于节点的集群的备份可以还原到无服务器配置。

**基于节点的集群**

如果你需要精细控制你的 Valkey、Memcached 或 Redis OSS 集群，你可以使用创建基于节点的集群。 ElastiCache您可以为集群选择节点类型、节点数量和跨AWS可用区的节点放置。由于 ElastiCache 是一项完全托管的服务，因此它可以帮助管理集群的硬件配置、监控、节点更换和软件修补。基于节点的集群可以设计为提供高达 99.99% 的可用性 SLA。无服务器 Valkey 或 Redis OSS 缓存中的备份可以还原到基于节点的集群。

**选择部署选项**

在以下情况下，选择无服务器缓存：
+ 您正在为新的或难以预测的工作负载创建缓存。
+ 您具有不可预测的应用程序流量。
+ 您想以最轻松的方式开始使用缓存。

在以下情况下，创建您自己的基于节点的集群：
+ 你已经在运行 ElastiCache Serverless 了，想要更精细地控制运行 Valkey、Memcached 或 Redis OSS 的节点类型、节点数量以及这些节点的位置。
+ 您希望应用程序流量相对可预测，并希望对性能、可用性和成本进行精细控制。
+ 您可以预测容量要求以控制成本。​

## 比较无服务器缓存和基于节点的集群
<a name="WhatIs.deployment.comparing"></a>


| 功能 | 无服务器缓存 | 基于节点的集群 | 
| --- | --- | --- | 
|  缓存设置  |  在一分钟内创建缓存，只需一个名称  |  提供对集群设计的精细控制。用户可以选择节点类型、节点数量和跨AWS可用区域的位置  | 
|  支持的 ElastiCache 版本  |  Valkey 7.2 及更高版本、Redis OSS 7.1 及更高版本、Memcached 1.6.21 及更高版本  |  Valkey 7.2 及更高版本、Redis OSS 4.0 及更高版本、Memcached 1.4 及更高版本  | 
|  集群模式（Valkey 和 Redis OSS）  |  仅在 `cluster mode enabled` 下操作引擎。客户端必须支持`cluster mode enabled`才能连接到 ElastiCache 无服务器。  |  可以配置为在启用集群模式或禁用集群模式下运行。  | 
|  扩展  |  无需任何容量管理即可自动对引擎进行垂直扩缩和水平扩缩。  |  提供对扩缩的控制，同时还要求进行监控，以确保当前容量足以满足需求。 对于 Valkey 和 Redis OSS，您可以选择根据需要增加或减小缓存节点大小来垂直扩缩。您也可以通过添加新分片或向分片添加更多副本来水平扩展。Memcached 不提供此功能。 您还可以使用自动扩缩功能，根据计划配置扩缩，或根据缓存上的 CPU 和内存使用率等指标进行扩缩。  | 
|  客户端连接  |  客户端连接到单个端点。这使得底层缓存节点拓扑（扩展、替换和升级）可以在不断开客户端连接的情况下进行更改。  |  客户端连接到每个单独的缓存节点。如果节点被替换，客户端会重新发现集群拓扑并重新建立连接。  | 
|  可配置性  |  不提供精细配置。客户可以配置基本设置，包括可以访问缓存的子网、自动备份的开启或关闭以及缓存的最大使用限制。  |  基于节点的集群提供精细配置选项。客户可以使用参数组进行精细控制。有关由节点类型决定的这些参数值的表，请参阅[引擎特定参数](ParameterGroups.Engine.md)。  | 
|  多可用区  |  数据在多个可用区之间异步复制，以提高可用性并缩短读取延迟。  |  提供在单个可用区或跨多个可用区创建集群的选项（AZs）。Valkey 或 Redis OSS 为多可用区集群提供跨多个可用区异步复制的数据，以提高可用性并缩短读取延迟。  | 
|  静态加密  |  始终启用。客户可以在中使用AWS 托管式密钥或客户管理的密钥AWS KMS。  |  启用或禁用静态加密的选项。启用后，客户可以在中使用AWS 托管式密钥或客户管理的密钥AWS KMS。  | 
|  传输中加密（TLS）  |  始终启用。客户端必须支持 TLS 连接。  |  启用或禁用的选项。  | 
|  备份  |  支持自动和手动备份缓存，不会影响性能。 Valkey 和 Redis OSS 备份是交叉兼容的，可以还原到 ElastiCache 无服务器缓存或基于节点的集群中。  |  支持 Valkey 和 Redis OSS 的自动和手动备份。集群可能会受到一些性能影响，具体取决于可用的预留内存。有关更多信息，请参阅 [管理 Valkey 和 Redis OSS 的预留内存](redis-memory-management.md)。 Valkey 和 Redis OSS 备份是交叉兼容的，可以还原到 ElastiCache 无服务器缓存或基于节点的集群中。  | 
|  监控  |  Support 缓存级别指标，包括缓存命中率、缓存错过率、数据大小和 ECPUs 消耗量。 ElastiCache Serverless 使用缓存中发生重大事件 EventBridge 时发送事件。您可以选择使用 Amazon EventBridge 监控、摄取、转换和 ElastiCache 处理事件。有关更多信息，请参阅 [无服务器缓存事件](serverless-metrics-events-redis.md#serverless-events)。  |  基于节点的 ElastiCache 集群会在每个节点级别发布指标，包括主机级别的指标和缓存指标。 基于节点的集群会针对重大事件发出 SNS 通知。请参阅 [Memcached 的指标](CacheMetrics.Memcached.md) 和 [Valkey 和 Redis OSS 的指标](CacheMetrics.Redis.md)。  | 
|  可用性  |  99.99% 可用性[服务水平协议（SLA）](https://aws.amazon.com/elasticache/sla/)  |  基于节点的集群经设计，可实现高达 99.99% 的可用性[服务水平协议（SLA）](https://aws.amazon.com/elasticache/sla/)，具体取决于配置。  | 
|  软件升级和修补  |  自动将缓存软件升级到最新的次要版本和补丁版本，而不会影响应用程序。客户会收到主要版本升级的通知，可以随时升级到最新的主要版本。  |  基于节点的集群可以为客户提供自助服务，帮助他们进行次要版本和补丁版本升级，以及主要版本升级。管理更新会在客户定义的维护时段自动应用。客户还可以选择按需应用次要版本或补丁版本升级。  | 
|  全局数据存储   |  不支持   |  支持全局数据存储，支持通过单区域写入和多区域读取实现跨区域复制  | 
|  数据分层  |  不支持  |  使用 r6gd 系列节点创建的集群将在内存和本地 SSD（固态硬盘）存储之间进行数据分层。除了将数据存储在内存中外，数据分层还通过在每个集群节点中使用成本较低的固态硬盘 (SSDs)，为 Valkey 和 Redis OSS 工作负载提供了一种性价比选项。  | 
|  定价模式  |  Pay-per-use，基于以 GB 小时为单位存储的数据和 ElastiCache 处理单元 (ECPU) 中的请求。请参阅[此处](https://aws.amazon.com/elasticache/pricing/)的定价详细信息。  |  Pay-per-hour，基于缓存节点的使用情况。请参阅[此处](https://aws.amazon.com/elasticache/pricing/)的定价详细信息。  | 

相关主题:
+ [创建和管理基于节点的集群 ElastiCache创建和管理基于节点的集群 ElastiCache ](designing-elasticache-cluster.md)