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

Azure – 在阶段动态发现服务Web角色URL

发布时间:2020-12-14 19:39:09 所属栏目:资源 来源:网络整理
导读:我正在考虑将现有的应用程序移动到Azure.它将在一个Web角色中具有MVC应用程序,在另一个Web角色中具有一些WCF服务.在线直播时,该网站将在http://www.myapp.com上发布,服务将在http://api.myapp.com上,MVC应用程序配置为指向http://api.myapp上的服务.COM. 问
我正在考虑将现有的应用程序移动到Azure.它将在一个Web角色中具有MVC应用程序,在另一个Web角色中具有一些WCF服务.在线直播时,该网站将在http://www.myapp.com上发布,服务将在http://api.myapp.com上,MVC应用程序配置为指向http://api.myapp上的服务.COM.

问题是将应用程序推送到Azure上的“阶段”配置时.我的理解是,每次推送到舞台都会使服务生活在一个新的网址(像http://4aa5ae2071324585ba5a902f4242a98c.cloudapp.net/这样的随机内容).在这种情况下,我的MVC应用程序发现服务网址的最佳方式是什么?

一种选择是设置像http://stage.api.myapp.com这样的dns条目,并在每次推送到舞台时更新我的??DNS CNAME记录以指向新的Azure临时URL,但是……哎呀.

另一个选择是推送到阶段,获取服务的新URL,RDC到MVC角色的每个实例并手动更新配置.还好.

有一个简单的方法吗?我知道我可以用PowerShell之类的东西自动执行上面的一些步骤,但我真的希望Azure框架中有一些东西可以让它变得简单.看起来这将是一个标准的场景.

解决方法

动态发现登台URL的唯一方法是让实例检查自己的deploymentID.我假设MVC网站和WCF服务在同一部署中.如果检查RoleEnvironment.DeploymentID,您会发现这与staging中使用的“随机”URL完全一??致(即http:// [deploymentID] .cloudapp.net).

只要您在客户端上动态创建ChannelFactory,它就应该能够获取自己的DeploymentID并找到暂存URL.

当然,这仅在部署到分段时有用.你为什么不简单地使用生产槽?该名称是稳定的,您可以依赖它或您为其设置的CNAME(更有可能).您可以随时拥有多个托管服务(dev,QA,prod等),只需使用它们上的生产槽即可.

(编辑:李大同)

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

    推荐文章
      热点阅读