我需要在Azure Cloud Service上部署我的Java应用程序。我不想要使用Azure VM管理自己的计算机所带来的额外开销,这是一个IaaS,我也不想使用App Service,因为每台计算机的最大核心数是4-我的应用程序非常耗费计算量我希望每个实例至少使用16个核心,Azure Cloud Services提供这些核心(D5v2实例)。
我的构建系统是Maven,我想使用像Codeship这样的东西构建我的.war并将其部署到Azure云服务(而不是使用Azure Eclipse SDK手动发布到Azure云服务)。我在Azure文档上花了好几个小时,但还没有找到任何方法。(Azure App Service有一个简单的上传战争来部署'模型。我不知道为什么同样不适用于云服务:https://azure.microsoft.com/en-in/documentation/articles/web-sites-java-get-started/)。
答案 0 :(得分:0)
请记住,云服务是Azure的原始部署机制,可追溯到2010年(如果您想要计算生产前的日期,可以使用2009年)。 .cspkg
格式与以往几乎相同。 Web Apps部署机制完全不同。
Eclipse(在Windows上)有一个特定的插件可用于构建.cspkg
,然后您可以通过PowerShell或CLI自动部署。
或者,您可以将.war
文件捆绑在Visual Studio生成的.cspkg
中,然后在`OnStart()中启动。同样,您可以从脚本自动部署 - 无需直接从IDE中发布。
此外:没有什么可以阻止您从自动化过程中将.war
文件推送到Blob存储(或其他地方),然后向您的应用发送某种类型的消息,让它知道更新自身。此时,没有重新部署.cspkg
- 相反,它只是将新的.war
下载到正在运行的Web / worker实例并重新启动java
进程。
答案 1 :(得分:0)
azure-tools-for-java
的插件,将war文件作为web / worker角色实例部署到云服务中。
还有一个官方tutorial,展示了如何开始。
作为参考,您可以参考以下第9频道的文章列表和非常有用的视频。