2014-02-07 84 views
0

我们可以在Windows Azure上部署一个java项目,而无需在Windows Azure存储上载JDK和Tomcat吗?如果是的话,请告诉我如何去做。部署java web项目,而无需在Windows Azure上部署JDK和tomcat

我在windows azure中提供了一个项目,在Java中创建一个示例应用程序。 但是,当我必须创建一个云服务时,我应该部署大约100-130 MB的JDK和tomcat。没有任何解决方案,因此我们应该部署云服务,而不是JDK和tomcat。

+0

你可以编辑你的问题,以提供你想要做的更多细节?这是否通过Eclipse与Cloud Service(例如,工作者角色)协作?你问是否JDK或Tomcat存在于别的地方,不需要你上传它们?就目前而言,你的问题很模糊。 –

+0

我编辑了这个问题。 是的,它是一个通过eclipse工作的角色。 –

回答

0

Azure VM映像不包含JDK或任何Java Web服务器(Tomcat,Jetty等)。你需要得到它们,从某处

因此...当通过Eclipse和相关的Cloud Service模板构建一个Java应用程序时,会有一个启动脚本来引导您的工作者角色实例。这涉及从某处抓取SDK和Web服务器(Tomcat,Jetty等)并将其放置在实例的磁盘上。由于您使用的是云服务(在这种情况下为工作者角色),因此操作系统磁盘是无状态的:每当新的VM实例快速启动时,它就会重新启动,并且负责设置事件(通过启动脚本)。

所以:您需要设置您的SDK和Web服务器。您可以将这些与您的部署包绑定或从某处下载。前者将部署包大小增加了很多(可能是100MB?)。后者需要你从某处下载数据。您可以从Oracle之类的地方下载(这要求您每次都要通过许可协议),或者从您自己的存储帐户下载(只要它位于与代码部署位于同一区域的速度非常快)。进一步说:在同一个数据中心里,下载东西到你的工作者角色实例中时没有带宽费用。

当前Eclipse插件为您的工作角色设置了一个设置,您可以在其中指定JDK和Web服务器的blob存储。通过这样做,它基本上是一次性设置(除了升级JDK或Tomcat/Jetty版本时,您需要重新上传到blob存储)。一旦这些位在blob存储中,您只需要将Java类包含在您的部署包中。

+0

在最近的SDK中,您可以使用该选项来使用由Microsoft在Azure为您托管的Azul Zulu OpenJDK。 – Kazaag