【发布时间】:2013-09-18 03:29:01
【问题描述】:
我们(我们的公司)正在托管一个带有 Web 角色的 asp.net C# 云服务,用于报告网站。 不幸的是,报告网站的使用量正在增长,原来仅使用中型 VM 托管,并发现其存在内存泄漏,导致云服务始终关闭并停止工作。最后我们转移到 A7 VM(好吧,那很贵)解决了我们 2-3 个月的问题。不知何故,新东西开发新功能开发最终内存绰绰有余(它的 56GB RAM)但过程不是真的可以同时满足如此昂贵的使用。
在网上寻找解决方案,发现有一个可以使用的共享缓存。 我们决定从 A7 迁移到 XM VM(A7 不支持共享缓存)并使用共享缓存的专用角色。
我们希望实现的是少数实例之间的负载平衡(如果一个实例关闭,它将重定向到另一个实例),并让专用角色存储我们所有的会话内容。我的方向正确吗?
如果是,如何实现?我调查了this,是否真的需要注册一个缓存服务的预览程序才能使用它?
感谢您的建议,如果有错误请指出我的错误。
**不知何故,在从网上阅读内容后,我发现上面提到的方法是一种新方法,而旧方法是角色缓存,我可以从here 看到它。是否可以使用此方法在多个实例之间共享会话状态,即使其中一个实例已关闭并路由到另一个可用的实例并回用会话?
【问题讨论】:
-
Worgon,为什么不使用更大的虚拟机,而不是修复内存泄漏?
-
@Kwill 感谢您的回复,是的,我们这样做了,但发现问题出在我们购买的组件上。不知何故,它提供了需要对代码进行重大更改的解决方案,并且需要付出相当大的努力才能做到这一点,例如创建 SSAS。最后我们决定对此进行更改。
标签: c# asp.net azure azure-caching dedicated