Azure 我对云服务的部署有点困惑,尤其是是否可以替换代码
刚刚习惯VS2012发布云服务。目前,我有一个包含MVC3应用程序的单实例webrole。我可以毫无问题地将其发布到Azure,并创建云服务>Web角色>虚拟机。好的需要一点时间 然而,当我做一点代码更改时,如何在不替换实现WebRole等的所有虚拟机的情况下仅迁移此代码更改 代码和基础设施似乎是不可分割的,或者我误解了。有没有办法只更新代码位Azure 我对云服务的部署有点困惑,尤其是是否可以替换代码,azure,azure-web-roles,Azure,Azure Web Roles,刚刚习惯VS2012发布云服务。目前,我有一个包含MVC3应用程序的单实例webrole。我可以毫无问题地将其发布到Azure,并创建云服务>Web角色>虚拟机。好的需要一点时间 然而,当我做一点代码更改时,如何在不替换实现WebRole等的所有虚拟机的情况下仅迁移此代码更改 代码和基础设施似乎是不可分割的,或者我误解了。有没有办法只更新代码位 谢谢。如果在云服务上启用WebDeploy,则可以使用WebDeploy发布MVC应用程序 有关详细信息,请参阅。云服务中的代码和基础设施实际上是分开的
谢谢。如果在云服务上启用WebDeploy,则可以使用WebDeploy发布MVC应用程序
有关详细信息,请参阅。云服务中的代码和基础设施实际上是分开的。您上传的只是一个部署包,其中只包含代码和支持库/文件。您不需要上传vhd。Azure为您提供了这一功能,先旋转一个vhd,然后访问该vhd上一个文件夹中的代码。每次扩展到更多实例时,都会发生相同的过程 当您进行代码更改时,您将构建一个新的部署包并部署它。如果将其作为就地更新(vs delete+redeploy)执行,则每个角色都会在每个实例上更新(当您有多个角色实例时,它们不会同时更新)。您甚至可以指定只希望更新部署中的单个角色(例如,如果您在web角色之外还有一个辅助角色,并且希望让所有辅助角色实例都保持运行,那么这将非常有用)
当代码更新发生时,虚拟机不会被替换,但它们会被回收,当它们重新启动时,它们会运行更新的代码。当您启动更新时,您会上载一个完整的包,其中不仅包含您的代码文件,还包含虚拟机的配置,例如实例的数量、要在防火墙上打开的端口,要分配的本地资源等。这些配置设置是代码包的一部分-因此不仅仅是更新代码文件 但是,有几种方法可用于对更新进行更精细的控制
您可以在使用该项目的多台服务器上使用WebDeploy和云服务(免责声明:我维护它) 或者,您也可以将优秀的Octopus部署技术与项目结合使用(免责声明:我也维护此技术)
不过,老实说,如果你只有一个简单的web应用程序,那么我不会同时使用云服务——我只会使用它。尽管如此,请随时查看我的博客文章,了解可能迫使您使用云服务的情况。以上所有答案都是正确的,如果您试图更改生产服务的代码,您肯定希望执行所述的就地升级。然而,在开发/测试阶段或故障排除期间,我经常想做一个小的更改并快速测试。要执行此操作,请查看其中描述了如何通过RDP将代码修改到Azure VM。这一点不错,但。。。Web部署仅在开发/测试中有用,因为它仅限于单实例。Web部署仅限于单实例的有趣之处感谢。目前我右键点击VS2012中的云项目。出现一个弹出窗口,告诉我云服务正在使用中,我是否要替换它。所以我点击yes,大约10分钟后我就完成了。所以也许我已经在做更新了,或者离更新最近?谢谢,非常全面。所以基本上使用发布。事实上,90%的web应用程序都使用WAWS,我发现它非常优秀。然而,我们有一些需要完全信任的第三方PDF组件,因此它们必须在云服务中运行。@SamJolly:是的。更新Azure服务需要10-15分钟,我感受到了您的痛苦。我个人大量使用Azure Emulator来实现更快的测试周期。此外,我建议您构建网站,使其在Azure和非Azure上都能工作,这样您就可以在进行Azure集成测试之前发布到开发/登台服务器。啊,模拟器。是的,我正在使用它,但我发现MVC代码在模拟器中运行的速度比单独运行要慢得多。好的,模拟器运行得比较慢,但看起来确实很慢,我正在运行一台16GB的I7笔记本电脑。我确实尝试过通过右键单击项目,选择“调试”,然后选择“启动实例”来调试MVC项目,但是这看起来仍然很慢。@SamJolly:即使在调试时,您是否也在使用Azure作为数据库?那会让它变得很慢。如果您想拥有一个测试环境,它应该与Azure完全分离,包括数据库、文件等。我有一台类似的spec计算机(16GB i5-3470),并且我使用emulator在SSD上安装本地SQL Express。我发现它与生产环境相比速度非常快。我已经完成了这两项工作,因此将检查:)但是我从您那里得到的要点是,如果您的设置正确,那么运行模拟器应该非常快,当然