gpt4 book ai didi

tomcat - azure : Java webrole

转载 作者:行者123 更新时间:2023-11-28 22:14:24 25 4
gpt4 key购买 nike

我正在探索 Azure 平台,但遇到了问题。

其实,有一点我不明白......

我了解 Web 角色和辅助角色之间的区别。但是如何专门为 Java 应用程序创建 Web 角色呢?

因为在eclipse中为azure开发java应用程序时,我们必须复制/粘贴java服务器(我选择了tomcat7)+ jdk。我假设它只是在模拟器内运行java应用程序。

但是,当将应用程序作为 webrole 部署到 azure 时......它只上传 war 包 + xml 配置文件(cscfg 等)还是还上传服务器和 jdk ?我尝试使用“Cloud”参数而不是“Emulator”参数构建项目,它创建了一个 150Mb 的巨大 cspkg 文件...我真的无法每次更新应用程序时上传 150Mb...

为什么不允许上传 .war 文件?如果我们必须上传服务器分发版,那么如何设置故障转移和 session 复制?

我可能错过了一些东西......

感谢您的回答

<小时/>

编辑:

实际上,根据我从网上读到的信息,Java应用程序不是由Azure本地处理的,因此您必须在包内提供自己的应用程序服务器(tomcat,glassfish等..),并且启动脚本将运行包含您的应用程序的服务器。每次要重新部署新包时,您都必须上传 jre + 服务器二进制文件 + 应用程序代码。

没有对 session 复制或其他任何内容的内置支持。如果您希望 session 在多个实例之间“共享”,则必须使用表存储服务来存储 session 信息。

注意:使用 eclipse,最新的插件允许您设置粘性 session ,但我对此一无所知

因此,Java 应用程序不会部署为网络角色,而是部署为辅助角色,您可以在其中添加自己的服务器。

Webroles 仅适用于 .NET 和 PHP 应用程序。

如果我错了,请纠正我。

最佳答案

你是对的。一般来说,您也可以在 Web 角色中运行 java/Tomcat,但在 Web 角色中,IIS 中必须至少有一个站点(不要将端口 80 绑定(bind)到该站点,因为 IIS 和 Tomcat 无法共享 TCP 端口)。

您应该尝试使用 Azure VM Role 。在这种情况下,您可以在本地创建具有所有系统要求(JRE、Tomcat...)的虚拟机。您可以将此虚拟镜像上传到 Azure 作为 VM 角色的模板。现在您只能上传您的应用程序文件。

您还可以使用启动任务来加速上传/部署过程,该任务从 Blob 存储下载并解压 JRE 和 Tomcat。 Azure Bootstrapper可以帮助你。

关于tomcat - azure : Java webrole,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9150617/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com