Windows Azure 中的服务器端状态管理

Posted

技术标签:

【中文标题】Windows Azure 中的服务器端状态管理【英文标题】:Server side state management in Windows Azure 【发布时间】:2016-03-16 09:36:25 【问题描述】:

我正在开发一个在 Windows Azure 上运行的分布式应用程序,但我是这种环境的新手。我有一个关于服务器端状态管理的问题。 我应该在哪里存储几乎是静态的全局数据?

因为如果用户向应用程序发出请求,它是一个分布式环境,不能保证后续请求会被路由到同一个服务器,所以我认为我应该使用 Sql Azure 或 Table Storage Session Provider(但是我读过这可能是性能问题)来存储数据。

我还可以使用启用会话维护的 Windows Azure AppFabric 缓存。

存储不需要保护的全局信息的更好解决方案是什么?有没有类似“Application”的东西(比如Application["key"] = value)?

谢谢

【问题讨论】:

【参考方案1】:

请查看我在以下帖子中的回复:

Microsoft Azure .NET 4.5 WebForms App : Session TimeOut / InProc / Single Instance

具体如下:

如果你想保持会话状态,你必须使用其中一种 以下选项

使用 Azure SQL 的 SQL 会话状态提供程序 Azure 表会话状态 Azure Redis 缓存的会话状态

您可以在以下链接中找到有关如何执行此操作的详细信息:

Session State Management in Windows Azure Web Roles Session state with Azure Redis cache in Azure App Service

我认为最简单的方法是使用 Azure Redis 缓存,如 上面的链接。

如果这有帮助,请告诉我!

【讨论】:

您为什么不将此问题标记为与您回答的问题重复? 我不知道我有能力做到这一点。我可以删除我的答案并执行此操作吗? 嗯...我回去阅读了您回答的问题。虽然您的答案适用于这个问题,但它并不真正适用于其他问题(而且这些问题绝对不是重复的)。【参考方案2】:

当时肯定是,但现在是 Azure Storage Tables :)

【讨论】:

以上是关于Windows Azure 中的服务器端状态管理的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Azure 中的所需状态配置 (DSC) 进行 Windows VM 的代理设置?

Azure 服务结构资源管理器中的 Java Webapp 部署

使用Azure Automation Hybrid管理本地SQL Server备份状态

13.Azure流量管理器(上)

13.Azure流量管理器(上)

Azure Service Fabric - 外部状态管理器