我们可以在windows azure上部署一个java项目而无需在windows azure上的存储上上传JDK和Tomcat吗?如果是,请告诉我如何操作。
我创建了一个Windows Azure中提供的项目,用Java创建一个示例应用程序。 但是,当我必须创建云服务时,我应该部署JDK和tomcat,总计大约100-130 MB。是不是有任何解决方案,以便我们应该部署云服务而不是JDK和tomcat。
答案 0 :(得分:0)
Azure VM映像不包含JDK或任何Java Web服务器(Tomcat,Jetty等)。您需要从某处获取它们。
所以......当通过Eclipse和相关的Cloud Service模板构建Java应用程序时,会有一个启动脚本来引导您的工作者角色实例。这涉及从某个地方抓取SDK和Web服务器(Tomcat,Jetty等)并将其放在实例的磁盘上。由于您正在使用云服务(在这种情况下是工作者角色),因此操作系统磁盘是无状态的:每次新的VM实例旋转时,它都会重新开始,您负责设置(通过启动脚本)。 / p>
所以:您需要设置SDK和Web服务器。您可以将这些与您的部署包捆绑在一起,也可以从某个地方下载它们。前者将部署包大小增加了很多(可能是100MB?)。后者要求您从某处下载位。您可以从像Oracle这样的某个地方下载(这需要您每次都要通过许可协议),或者从您自己的存储帐户(这非常快,只要它与您的代码部署位于同一区域)下载。此外:在同一个数据中心,将内容下载到工作者角色实例时没有带宽费用。
当前的Eclipse插件具有worker角色的设置,您可以在其中为JDK和Web服务器指定blob存储。通过这样做,它基本上是一次性设置(除非是时候升级JDK或Tomcat / Jetty版本,然后你需要重新上传到blob存储)。一旦这些位在blob存储中,您只需要在部署包中包含Java类。