Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Windows Azure中仅升级单个webrole实例_Azure_Azure Web Roles - Fatal编程技术网

如何在Windows Azure中仅升级单个webrole实例

如何在Windows Azure中仅升级单个webrole实例,azure,azure-web-roles,Azure,Azure Web Roles,我已经创建了Azure项目。创建了一个包含两个实例的web角色。我已经发布了VS2010中的两个实例。现在我想通过关闭站点来更新角色的另一个实例。请尽快帮助我完成此操作。您不能更新一个实例。这就是为什么您有生产和暂存插槽。将您的新代码上载到暂存槽,然后在仪表板的临时URL上查看它。然后,高兴时,交换VIP。最后,删除现在位于暂存槽中的旧代码 负载平衡器实际上处理在VIP交换之后将用户移动到新实例以获得未中断的用户体验。尽管VIP交换是首选方法(因为回滚更容易),但它可以在不使用暂存和生产插槽的情

我已经创建了Azure项目。创建了一个包含两个实例的web角色。我已经发布了VS2010中的两个实例。现在我想通过关闭站点来更新角色的另一个实例。请尽快帮助我完成此操作。

您不能更新一个实例。这就是为什么您有生产和暂存插槽。将您的新代码上载到暂存槽,然后在仪表板的临时URL上查看它。然后,高兴时,交换VIP。最后,删除现在位于暂存槽中的旧代码


负载平衡器实际上处理在VIP交换之后将用户移动到新实例以获得未中断的用户体验。

尽管VIP交换是首选方法(因为回滚更容易),但它可以在不使用暂存和生产插槽的情况下完成

如果一个角色中有多个实例,那么在部署时,结构控制器将为您处理所有事情。它将确保一次升级一个实例

如果您查看云服务实例选项卡上的两个实例,您将看到它们位于单独的更新(和故障)域中。(升级域和更新域是一样的——MS在文档、api和门户中可以互换使用它)。结构控制器先升级一个域中的所有计算机,然后再启动另一个域。在这种情况下,一个实例将被升级,只有当它成功时,另一个实例才会开始升级。有关更多信息,请参阅


简单的回答是,只要配置了多个实例,就不必担心站点会因为升级或故障而停机。用一个简单的项目试试这个方法,你会发现它能像预期的那样工作。

你的意思是说,即使我发布了我的云项目,也总是至少有一个实例在运行。那么,不必考虑VIP交换,只尝试从云项目中更新一个实例。谢谢你,西蒙,没错。只要有多个实例在运行。另外,请尝试将部署配置中的实例数(从VS)与门户中配置的实例数相匹配-如果新服务定义中的实例数较少,则可能会出现停机,因为整个升级域可能会被删除。