这可能不是什么新鲜事,但我希望有人可以让我走上正轨,因为它在天蓝色部署期间有点混乱。我正在计划在Azure上进行部署。这就是我所拥有的
我的问题是,如果1.是公开的应用程序,2。是1.联邦安全(内部),我应该如何计划我的部署在azure记住1.将需要规模 - 之后的某个时间以及两个wcf服务?我是否发布到一个云服务或如何? 我的理解是,云服务是n-web / worker角色的逻辑容器。 但是当yu有2个网页鞋底时,就像在这种情况下两个asp.net应用程序,哪一个成为默认应用程序?
最诚挚的问候 萨蒂什南比亚
答案 0 :(得分:4)
默认情况下,解决方案中的所有Web角色都是公共的。如果您愿意,可以通过进入服务定义并删除HTTP端点来更改此设置;您还可以定义仅对云服务可用的内部HTTP端点,不会向负载均衡器公开任何内容。在同一个项目中拥有所有Web角色的优势在于,可以轻松动态检查RoleEnvironment和每个Web角色 - 换句话说,解决方案中的所有角色都“了解”其他角色及其可用端口。部署一个软件包也很容易。
所有角色共享相同的DNS名称(.cloudapp.net)(但您可以使用主机标头进行区分),但通常通过.cloudapp.net服务上的负载均衡器使用不同的端口公开它们。当服务在云中运行时,您可以看到这一点,门户中有链接指向具有指定端口的公共HTTP端点的每个角色。端口80(由外部HTTP端点定义)是“默认”站点。
您还可以创建多个云项目,并单独部署它们。在这种情况下,每个都有自己的DNS名称,每个都是单独管理的。这是否是一件好事取决于应用程序的紧密耦合程度,以及您是否通常部署整个解决方案,或者仅更新该解决方案中的各个角色。但是没有成本或可扩展性差异。
如果您要经常重新部署其中一个角色,我建议将其分解。
答案 1 :(得分:1)
要在同一个云实例下部署多个Web角色,请查看以下内容: Best practice for Deployment of Web site into a cloud service
实施多个辅助角色将更加棘手: Run multiple WorkerRoles per instance