加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – Windows Azure VIP Swap,如何处理自定义web.config值

发布时间:2020-12-16 07:19:28 所属栏目:asp.Net 来源:网络整理
导读:将新部署发布到Cloud Service的临时或生产环境很容易,但我想更频繁地使用VIP交换(交换生产和暂存部署).就我而言,我为每个环境都有不同的web.config值.例如,在暂存时,我的web.config可能具有: appSettings add key="ConnectionStringName" value="StagingCon
将新部署发布到Cloud Service的临时或生产环境很容易,但我想更频繁地使用VIP交换(交换生产和暂存部署).就我而言,我为每个环境都有不同的web.config值.例如,在暂存时,我的web.config可能具有:

<appSettings>
    <add key="ConnectionStringName" value="StagingConnectionString" />
    <add key="WCFServiceUrl" value="http://somelongGUID.cloudapp.net/" />
</appSettings>

……在生产方面,我会:

<appSettings>
    <add key="ConnectionStringName" value="ProductionConnectionString" />
    <add key="WCFServiceUrl" value="http://prodservice.cloudapp.net/" />
</appSettings>

发布到Staging或Production时,将使用基于Debug或Release的正确值转换web.config.但是当谈到Windows Azure门户上的VIP Swap时,我必须触发交换,然后远程进入每个实例并手动更改这些值(这绝对不是正确的方法).

有什么办法可以更好地处理这种情况?或者是否有更好,更灵活的解决方案来处理这些自定义配置值,而不是在web.config中使用它们(特别是在这种情况下)?

提前致谢.

解决方法

使用VIP交换被认为是在Web和辅助角色中促进登台生产的“标准”方式.它通过更改Azure路由以将“生产”URL指向“登台”角色实例并将“登台”URL指向“生产”角色实例来实现此交换.

在内部,角色不知道这种变化:它完全发生在托管过程的外部.

如果要以这种方式使用VIP交换,则应考虑将应用程序更改为不知道其主机环境,或者在需要知道它时从其主机读取信息.

在Azure中安排生产和暂存的方式,包应该都是相同的:两个实时配置.该功能旨在实现高可用性部署;它不能满足将角色调用到不同服务所暗示的那种测试,具体取决于它是否是暂存部署.

你最好使用一个单独的角色来执行测试;在使用当前生产部署进行切换之前,只应使用暂存来测试部署是否成功.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读