有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

maven如何使用WAR文件将Java应用程序部署到Azure云服务(不是VM或应用程序服务)?

我需要在Azure云服务上部署我的Java应用程序。我不希望使用Azure VM(IaaS)管理我自己的机器会带来额外的开销,我也不想使用应用程序服务,因为每台机器的最大核心数是4个-我的应用程序非常计算密集,我希望每个实例至少使用16个核心,Azure云服务提供了这些核心(D5v2实例)

我的构建系统是Maven,我想使用类似Codeship的东西来构建我的。war并将其部署到Azure云服务(而不是使用Azure Eclipse SDK手动发布到Azure云服务)。我在Azure文档上花了几个小时,但还没有找到任何方法。(Azure应用程序服务有一个简单的“上传战争以部署”模型。我不知道为什么云服务没有同样的模型:https://azure.microsoft.com/en-in/documentation/articles/web-sites-java-get-started/


共 (2) 个答案

  1. # 1 楼答案

    @DylanColaco,正如@DavidMakogon所说,您可以为Eclipse或IntelliJ IDEA安装名为^{}的插件,将war文件作为web/worker角色实例部署到云服务中

    还有一个官方的tutorial展示了如何开始

    作为参考,你可以参考下面第9频道的文章列表和一段非常有用的视频

  2. # 2 楼答案

    请记住,云服务是Azure最初的部署机制,可以追溯到2010年(如果你想计算预生产天数,可以追溯到2009年)。.cspkg格式与以往几乎相同。Web应用程序的部署机制完全不同

    Eclipse(在Windows上)有一个特定的插件可用于构建.cspkg,然后您可以通过PowerShell或CLI自动部署该插件

    或者,您可以将.war文件绑定到VisualStudio生成的.cspkg中,然后在`OnStart()中开始工作。同样,您可以通过脚本自动化部署,无需直接从IDE中发布

    此外:没有什么能阻止你的自动化进程将.war文件推送到blob存储(或其他地方),然后向你的应用发送某种类型的消息,让它知道如何自我更新。在这一点上,没有重新部署.cspkg,而是下载一个新的.war来运行web/worker实例并重新启动java进程