在现有角色上托管 Azure 角色中缓存

重要

Microsoft 建议所有新开发使用 Azure Redis 缓存。 有关选择 Azure 缓存产品/服务的当前文档和指南,请参阅 哪种 Azure 缓存产品/服务适合我?

本主题介绍如何在应用程序中的现有 Azure 角色上托管In-Role缓存。 在此上下文中,现有角色是指也用于其他应用程序代码或服务的 Web 角色或辅助角色。 这种类型的缓存拓扑也称为 并置,因为缓存位于也为其他函数提供服务的角色上。

有关使用共置拓扑的可下载示例,请参阅Caching会话状态和输出Caching示例

了解共同定位In-Role缓存

每个 Azure 角色都可以在一个或多个实例上运行。 托管这些角色实例的每个虚拟机均具有特定数量的物理资源(如内存)。 虚拟机大小设置将确定具体的值。 在指定每个虚拟机上用于缓存的内存百分比时,将共同定位现有角色上的缓存。

提示

尽管仅指定内存,但缓存功能使用其他物理资源,例如处理器和网络资源。

在角色上启用共同In-Role缓存

以下步骤介绍如何在Visual Studio中共同定位的角色上启用In-Role缓存。

  1. “解决方案资源管理器”中,找到“角色”文件夹。 双击要用于In-Role缓存的角色。

  2. 在属性窗口中,转至“Caching”选项卡。

  3. 选中“启用 Caching”复选框。

  4. 选择“共存角色”单选按钮,然后配置“缓存大小(%)”滑块。 下面的屏幕快照显示了该对话框设置。

    Caching Co-located Properites Window

  5. 单击省略号按钮,以选择用于保留缓存群集运行时状态的存储帐户。

  6. 然后,配置 default 缓存的设置或创建新的命名缓存。

共存 Caching 拓扑指南

以下准则适用于共同定位的In-Role缓存体系结构:

  1. 使用诊断数据确定为缓存分配的正确内存百分比。 包括在所需负载下运行的虚拟机实例的内存和 CPU 的性能计数器数据。 每个正在运行的角色实例可以使用的内存量由虚拟机大小(VM 大小)以及操作系统和在角色上运行的其他应用程序服务所使用的内存而定。 若要了解如何正确设置 缓存大小 (%) ,请参阅 Azure In-Role 缓存的容量规划注意事项

  2. 在以下情况下不建议使用共存拓扑:

    • 缓存大小大于 1.5 GB。

    • 缓存每个角色实例每秒超过 400 个缓存事务的群集

    • 缓存每个角色实例每秒缓存操作的带宽超过 1.2 MB 的群集。

    重要

    本部分中的指标提供了一般准则,用于确定缓存部署拓扑的类型。 你负责测试和监视云服务,以确保它符合你的要求。 如果存在内存不足或暂时性错误过多的情况,则可使用两项常用的缓解措施。 可以增加托管缓存的角色的运行实例数。 也可以从共存拓扑转到专用拓扑。 有关故障排除的详细信息,请参阅 Azure In-Role缓存故障排除和诊断

  3. 如果要从共享缓存迁移到角色上的缓存,则共置体系结构可能会提供简化的转换。 在这种情况下,无需将任何新角色添加到现有部署, 而是在服务中的任何现有 Web 角色或辅助角色上启用缓存。 但是,根据本部分中的准则,添加新的专用角色进行缓存可能仍然有利。 有关此方案的详细信息,请参阅从 Azure 共享缓存迁移到 In-Role 缓存

  4. 每个云服务仅支持一个缓存群集。

另请参阅

概念

在专用角色上托管 Azure In-Role缓存
关于 Azure 缓存的角色中缓存

其他资源

如何使用 Azure 角色中缓存