扩展

在负载较低的情况下进行缩放

在负载较低的情况下缩放缓存时,请配置 maxmemory-reserved 设置来提高系统响应能力。 有关详细信息,请参阅配置 maxmemory-reserved 设置

缩放群集

在横向扩展或缩减群集缓存之前,请尝试尽可能减少缓存中的数据。减少数据可确保必须移动的数据量较小,从而减少缩放操作所需的时间。 有关何时缩放的详细信息,请参阅何时缩放

在负载过高前进行缩放

在服务器负载或内存使用量过高之前开始缩放。 如果过高,则意味着 Redis 服务器正忙。 处于繁忙状态的 Redis 服务器没有足够的资源来缩放和重新分发数据。

缓存大小

如果使用 TLS 且连接数量很多,请考虑横向扩展,以便可以将负载分散到更多核心上。 某些大小的缓存托管在具有 4 个或更多核心的 VM 上。 通过将负载分散到多个核心上,你可以降低缓存 VM 上的总体 CPU 使用率。 有关详细信息,请参阅有关 VM 大小和核心数的详细信息

缩放和内存

可以在 Azure 门户中缩放缓存实例。 此外,可使用 PowerShell cmdlet、Azure CLI 和 Azure 管理库 (MAML) 以编程方式缩放缓存。

在门户中纵向扩展或缩减缓存时,maxmemory-reservedmaxfragmentationmemory-reserved 设置都会自动根据缓存大小成比例进行缩放。 例如,如果 maxmemory-reserved 在 6 GB 缓存上设置为 3 GB,并且你扩展到 12 GB 缓存,则在扩展期间这些设置会自动更新为 6 GB。 纵向缩减时,将发生相反的行为。

使用 PowerShell、CLI 或 REST API 以编程方式纵向扩展或缩减缓存时,将忽略更新请求中的任何 maxmemory-reservedmaxfragmentationmemory-reserved。 只会遵循缩放更改。 你可以在缩放操作完成后更新这些内存设置。

请根据你的层级参阅以下内容之一,以了解有关缩放和内存的详细信息:

注意

以编程方式纵向扩展或缩减缓存时,将忽略更新请求中的任何 maxmemory-reservedmaxfragmentationmemory-reserved。 只会遵循缩放更改。 你可以在缩放操作完成后更新这些内存设置。

如果最大程度地减少数据,将有助于更快地完成缩放

如果不需要在缓存中保留数据,请考虑在缩放之前刷新数据。 刷新缓存有助于更快地完成缩放操作,从而更快地提供新容量。 请查看有关如何启动刷新操作的更多详细信息。

后续步骤