【问题标题】:Azure - Deployment already in use - How to publish a Worker Role and Web Role to the same hosted serviceAzure - 部署已在使用 - 如何将工作角色和 Web 角色发布到同一托管服务
【发布时间】:2012-05-20 12:08:56
【问题描述】:

我的理解是我可以为每个托管服务拥有多个角色:http://msdn.microsoft.com/en-us/library/windowsazure/gg432976.aspx,所以为什么要告诉我:

当我想将我的 Worker 角色发布到与我的 Web 角色相同的托管服务时??

更新:我还是尝试了它,但它最终取代了我的 Web 角色.. :( 我应该如何将我的 Web 角色和辅助角色发布到同一个托管服务?最好来自 Visual Studio

【问题讨论】:

    标签: azure


    【解决方案1】:

    托管服务基本上是您的应用程序的主页,位于 .cloudapp.net(或者您可以将自定义名称映射到它)。然后你发布到这个家。如果将来您有代码更新,请重新发布。您可以更新(保持 IP 地址不变)或删除+替换(通常不需要或不推荐)。

    现在:您正在做的(我相信)是为您已经发布的托管服务添加第二个角色。您可以这样做,也可以在不删除+重新部署的情况下升级。基本上整个包都会重新上传(不仅仅是新角色),然后这两个角色将组成您的托管服务。

    希望在您发布几次之后,这一切都会变得有意义。 一定要启用升级(我不记得选项在哪里——现在不在我的开发机器前面)。我相信最新的 1.6 SDK 默认处理就地升级。不在我的开发机器前,我不记得升级时一切看起来如何,但它应该可以从 Visual Studio 中实现。它肯定是通过 Windows Azure 门户。

    【讨论】:

    • 不,我有两个独立的解决方案,两个不同的应用程序 - 我应该有两个托管服务,每个服务一个吗?每个托管服务或每个角色都有自己的 IP 地址吗?
    • 啊 - 感谢您指出这一点。一种解决方案将在单个云项目下拥有所有角色,最终将其上传到单个托管服务并提供单个 IP 地址。必须将具有第二个云项目的第二个解决方案部署到第二个托管服务(或同一个,清除旧代码)。
    • 每个托管服务都有一个IP地址。所有角色实例都通过该 IP 地址 + 端口进行通信。您可能将端口 80 和端口 443 用于 Web 角色,并且可能将端口 8000 映射到您的工作角色。然后这些端口在这些角色的所有实例之间进行负载平衡。 在您的托管服务内部,每个角色的每个实例都有一个唯一的 IP 地址 + 端口。而且...如果您配置内部端点,您就可以直接在您的角色实例之间进行通信。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    相关资源
    最近更新 更多