gpt4 book ai didi

azure - Azure 协同缓存和 InProc 之间的交换

转载 作者:行者123 更新时间:2023-12-03 03:18:31 26 4
gpt4 key购买 nike

我已将 Web 角色设置为使用共置缓存。问题是在开发过程中我们不想一直运行模拟器(因为它非常麻烦)。

由于 Azure session 状态提供程序的原因,正常运行我们的 Web 应用程序(未在 Web 角色中模拟)失败:

[InvalidOperationException: role discovery data is unavailable]
Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.get_Roles() +171

是否可以将缓存配置为在未在 Web 角色中运行时使用正常的 InProc,并在在 Web 角色中运行时使用 Azure 共置缓存。

最佳答案

session 状态配置位于 web.config 中,因此您可以使用标准 web.config 转换为本地开发创建配置覆盖,然后在部署它时确保切换到具有引用的配置到 Azure 缓存提供商。

http://blogs.msdn.com/b/webdev/archive/2009/05/04/web-deployment-web-config-transformation.aspx

更新:从下面的评论中添加注释。
您还可以在网站启动之前添加一些代码,以编程方式交换提供程序。可以通过 Web 角色启动 ( http://blog.elastacloud.com/2011/05/13/azure-howto-programmatically-modify-web-config-on-webrole-startup/ ) 或使用简单的(同步)启动任务来执行此操作。通过在 OnStart 角色或启动任务中执行此工作,您可以消除 Asp.NET 站点对 Azure 运行时的依赖关系,以检测它是否在 Azure 中运行,并且配置在 IIS 网站之前完成已启动。

关于azure - Azure 协同缓存和 InProc 之间的交换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17784493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com