本文档已存档,并且将不进行维护。

将 Memcache 应用程序与 Azure 托管缓存服务一起运行

更新时间: 2015年8月

Important重要提示
Microsoft 建议使用 Azure Redis 缓存进行所有新的开发。有关选择 Azure 缓存产品的最新文档和指导,请参阅哪种 Azure 缓存产品适合我?

托管缓存服务通过提供 Memcache 客户端填充程序,支持迁移基于角色的云服务 Memcache 客户端应用程序以使用 托管缓存服务。本主题提供了有关使用此填充程序来启用 Memcache 客户端应用程序以使用托管缓存服务的指南。

Memcache 是一种分布式内存中缓存解决方案,用于通过减轻数据库压力来帮助加快大型 Web 应用程序的运行速度。Memcache 由许多大型 Internet 网站使用,并已通过创新方式与其他技术合并。

Azure 支持 Memcache 协议,允许客户将现有 Memcache 实现轻松迁移到 Azure。如果应用程序已使用 Memcache,则没有必要使用新代码替换此代码。

运行带有 Memcache 的 托管缓存服务 是一个相对较好的选择,例如,好过仅在辅助角色中运行 Memcache 本身。这是因为 托管缓存服务 提供了许多增值功能,例如,正常关闭、高可用性、本地缓存、通知、数据一致性、高可用性 (HA) 以及对客户端透明的轻松收缩和扩展。例如,带有 Memcache 的 托管缓存服务 中的服务器哈希方案和分区管理可帮助进行负载平衡和保持数据一致性。

托管缓存服务 支持 Memcache 线路协议。有两种协议版本:二进制版本和文本版本。

Memcache 客户端应与 Azure 兼容。托管缓存服务 支持差不多所有其他 Memcache 实现所支持的 API。

因此,如果用户将 Memcache 应用程序引入 Azure,请将该应用程序指向 Azure 的 Memcache 实现,它将继续按原样运行,而不需要执行额外的应用程序修改。

Memcache 客户端填充程序安装在用于访问缓存的客户端上。该客户端通常是拥有应用程序本身的 Azure 角色。客户端填充程序支持本地缓存。

该填充程序是转换层。它将转换 Memcache 客户端对 托管缓存服务 API 的调用。填充程序包含两个部分 - 一个 Memcache 协议处理程序和一个 托管缓存服务 客户端。填充程序(转换层)安装在客户端本身上,不管对 托管缓存服务 API 的 Get 和 Put 调用来自何处。

当 Memcache 客户端指向作为 Memcache 服务器的 localhost 时,填充程序的本地实例将开始处理 memcache 操作。填充程序将操作转换为缓存 API 请求,然后将其发送到 托管缓存服务。

note备注
开始部署之前,请确保具有缓存终结点和缓存的访问密钥。有关创建缓存的详细信息,请参阅操作方法:为 Azure 托管缓存服务创建缓存。有关访问密钥的详细信息,请参阅Controlling Access using Access Keys

  1. 在具有 Memcache 客户端的角色上,右键单击角色名称并选择“添加库程序包引用”以启动 NuGet 窗口

  2. 搜索“Azure Caching Memcache 填充程序”。安装此 NuGet 程序包

  3. 此程序包将创建启动任务,为 memcache_default 添加内部终结点并将其映射到 11211,然后向 App.config 和 web.config 中添加相应的 dataCacheClients 节。可以在内部终结点选项卡中更改此配置。

  4. 在 App.config 或 Web.config 的 dataCacheClientSection 中的 autoDiscovery 元素中提供 托管缓存服务 终结点,在 authorizationInfo 中提供访问密钥

  5. 现在必须将客户端配置为“指向”此填充程序。编辑 Memcache 客户端配置并将服务器设置为“localhost”。此外,还必须设置正确的端口号(默认值为 11211)。

显示: