Azure session 管理

标签 azure

我已阅读《Azure in Action》一书中的以下内容: “在 Windows Azure 中,状态服务器或进程外 session 状态提供程序, 不支持”

谁能告诉我为什么不支持这个。他们在书中没有解释。我本以为我可以运行状态服务器,并且所有 Web 角色都可以使用它来读取 session 数据。 谢谢各位的回复

最佳答案

Windows Azure 具有 AppFabric 缓存,非常适合 session 存储。该项目于大约两周前上线。您可以在我的 StackOverflow 答案 here 中查看详细信息和 here .

关于缺乏状态服务器,我无法给您一个绝对的答案,除了直到最近,Web 角色在托管 Web 核心而不是完整 IIS 下运行,这可能会对提供状态服务器产生影响。此外,由于所有 Web 角色实例都是等效的,因此您如何指定哪个是状态服务器?如果 Windows Azure 回收该实例会发生什么?我认为这会是一个很头疼的问题。

借助 AppFabric 缓存解决方案,这是缓存即服务,完全独立于您的角色实例,并为您进行管理。您只需获取一个端点,附加到缓存,然后对名称/值对执行 put 和 gets 即可。通过 Azure 门户,您单击一个“客户端配置”按钮,就会为您生成一个神奇的 xml block - 您将其放置在 web.config 中,现在您拥有一个自定义 session 状态提供程序,用于存储/检索 session 数据缓存。

编辑:关于使用 SQL Azure 进行 session 状态:SQL Azure 没有 SQL 代理,因此您不会有后台作业定期清除缓存。有一个MSDN blog post展示如何让 SQL Azure 作为 session 状态提供程序工作(并使用辅助角色后台进程来执行 session 清理)。不过,我仍然推荐 AppFabric 缓存解决方案。

关于Azure session 管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5970396/

相关文章:

mysql - 首先将 EF 代码写入 Azure Linux VM 上托管的 MySQL 数据库

Azure Devops Pipeline - 任务的条件执行

具有队列触发的 Azure WebJob 多次触发

amazon-s3 - 需要存储 128 *位* 主键 : Should I use SQL Azure or Azure Table? 或者仅使用 Azure Blob 中的链接列表

c# - Azure函数: configure blob trigger only for new events

python - 我正在尝试将索引推送到 Azurecognitive 搜索,但这会出现错误 ServiceRequestError : EOF occurred in violation of protocol (_ssl. c:2427)

azure - 数据工厂版本2

azure - Azure 的 CPU 总时间和 CPU 平均时间有什么区别

powershell - 将 cmdlet 输出和另一个变量发送到 CSV 文件

azure - 如何获取存储在 Azure 存储帐户中的数字文件的下载 URL