0

我们(我们的公司)正在托管一个带有 Web 角色的 asp.net C# 云服务,用于报告网站。不幸的是,报告网站的使用量正在增长,原来仅使用中型 VM 托管,并发现其存在内存泄漏,导致云服务始终关闭并停止工作。最后我们转移到 A7 VM(好吧,那很贵)解决了我们 2-3 个月的问题。不知何故,新东西开发新功能开发最终内存绰绰有余(它的 56GB RAM)但过程不是真的可以同时满足如此昂贵的使用。

在网上寻找解决方案,发现有一个可以使用的共享缓存。我们决定从 A7 迁移到 XM VM(A7 不支持共享缓存)并使用共享缓存的专用角色。

我们希望实现的是几个实例之间的负载平衡(如果一个关闭,它将重定向到另一个实例),并让专用角色存储我们所有的会话内容。我是否朝着正确的方向前进?

如果是,如何实现这一目标?我对此进行了调查,是否真的需要为缓存服务注册一个预览程序才能使用它?

感谢您的建议,如果有错误请指出我的错误。

**不知何故,在从网上阅读内容后,我发现上述方法是一种新方法,而旧方法是角色缓存,我可以从这里看到它。是否可以使用此方法在多个实例之间共享会话状态,即使其中一个实例已关闭并路由到另一个可用并用于会话的实例?

4

1 回答 1

1

您的最佳选择是使用Windows Azure 缓存服务(预览版)。这将允许您在应用程序的多个实例之间共享会话状态。

您需要注册预览服务。缓存核心已经成熟,鼓励客户在其生产应用程序中使用此服务。

该服务允许您使用来自多个云服务的缓存,也允许您跨应用程序共享数据。此外,这消除了您对使用 XL VM 的依赖,因为 A7 不支持 In-Role Cache。

此外,需要明确的是,缓存有 3 种风格 - 1. 共享缓存 - 这是一个多租户服务,正在被弃用 2. 角色内缓存 - 这里缓存部署在您的云服务中,只能在内部使用云服务。这是两种类型 - 共同定位和专用。3. Cache Service (preview) - 新发布的服务。

没有什么叫做专用共享缓存。:)

于 2013-09-18T09:05:47.813 回答