部署多个web角色和工作者角色在单个Azure的云服务(Deploying Multiple Web

2019-08-17 23:21发布

这可能不是新的,但我希望有人可以把我在正确的轨道是湛蓝的部署过程中它的有点混乱。 我在规划Azure上部署的过程。 这是我

  1. 面向公众的ASP.Net MVC应用程序(Web的角色)+ WCF服务(Web的角色)是只能访问这个应用程序asp.net + WCF服务(工作者角色)再次1.访问过的消息队列
  2. 一个自定义STS即ASP.NET MVC应用程序(Web的角色)作为标识提供者(对于1.这是一个依赖方)+ WCF服务(Web的作用),以显露出一些STS的funcionality RP的,如1。
  3. SQL Azure的:1和2注访问:1,最终将成长为前来门户网站,对网络和辅助角色托管内部和外部访问多个WCF服务。

我的问题是,如果1,将被应用向公众公开,和2对1进行联合安全(内部),我应该怎么规划我在Azure上保持部署记1.需要向外扩展的某个时候后来有两个WCF服务一起? 难道我发布到一个云服务或怎么样? 我的理解是,云服务是正网/辅助角色的逻辑容器。 但是,当宇有2个鞋底就像在这种情况下,两个asp.net应用程序,其中一个将成为默认的呢?

顺祝商祺萨蒂什

Answer 1:

默认情况下,溶液中所有Web角色都是公开的。 您可以通过进入服务定义改变这一点,删除HTTP端点,如果你想; 您还可以定义内部HTTP端点,将只提供给云服务,什么都不会被暴露给负载平衡器。 具有在同一个项目中的所有Web角色的优点是,它很容易动态检查RoleEnvironment每个Web角色 - 换句话说,在溶液中的所有角色都是其他角色和他们的可用端口的“感知”。 它也很容易部署一个包。

所有角色共享相同的DNS名称(.cloudapp.net)(但是你可以使用主机头区分),但它们通常是由通过您.cloudapp.net服务负载平衡器使用不同的端口暴露。 你可以看到这个当服务在云中运行,也有指向每一个具有指定端口的公开HTTP端点的角色门户网站的链接。 的一个是端口80(如由外部HTTP端点定义)是“默认”的网站。

您还可以创建多个云项目,并分别部署它们。 在这种情况下,每个将有自己的DNS名称,每个单独管理。 这是否是一件好事或不依赖于应用程序如何紧密耦合的是,如果你通常会被部署在整个解决方案,或者只是更新该解决方案中的各个角色。 但是,没有任何成本或可扩展性差。

如果你打算只在角色之一频繁调动,我赞成突破出来。



Answer 2:

要在同一云实例部署下,多个Web角色看看这个: 为网站部署的最佳实践到云服务

多个工作角色将是棘手的落实: 每运行实例的多个WorkerRoles



文章来源: Deploying Multiple Web Roles and Worker Roles on a Single Azure Cloud Service