我想知道windows azure网站如何在多个实例中管理它的会话状态。互联网上有很多关于如何使用云服务在多个实例上共享会话状态的内容,但对于网站我找不到最终答案。
问题How does windows azure websites handle session?还没有客观答案。接受的最佳答案有一个很好的建议,但您必须观看超过1小时的视频。
你知道怎么做吗?我可以只使用InProc会话状态,而windows azure会自动在所有实例中管理它吗?
谢谢。
答案 0 :(得分:4)
看起来选项是:
Windows Azure缓存服务 [1]。这是Microsoft提供的新缓存服务。 128MB缓存的定价从每月12.50美元起(这是50%折扣的预览定价)。根据[2],访问缓存的延迟大约是1ms。
SQL Azure 与Angshuman Nayak [3]的协调相对便宜,特别是如果您已经在使用SQL Azure进行其他操作。作为缺点,他提到了潜在的性能问题,因为您通常使用共享数据库。你还需要注意清理实验课程。
基于此,似乎Azure Cache Service是可行的方法,除非价格是个问题。
[1] http://www.windowsazure.com/en-us/pricing/details/cache/
答案 1 :(得分:3)
InProc SessionState为not supported on Azure websites。您将不得不使用外部会话状态提供程序。此article显示了外部选项,此article显示了如何将SQL Azure用作会话状态提供程序。
答案 2 :(得分:0)
在azure中,您可以使用Redis缓存来处理会话。
- >安装nuget包RedisSessionStateProvider - >将您的SessionState模式设置为web.config中的Custom,将CustomProvider设置为RedisSessionProvider。
您可以从here
中找到更多信息