我今天读到的一个问题的答案建议将应用程序部署为爆炸式(解压缩)WAR。它让我思考。
我对JBoss / Tomcat所做的每个部署都使用了WAR / EAR文件。至少就我记忆而言。
这些年来我一直犯错吗?
以扩展形式部署应用程序而非打包是否有优势?
答案 0 :(得分:54)
我认为这是我在另一个问题中提到爆炸性WAR的答案。爆炸的WAR更容易导航,您可以更快地部署应用程序的“部分”(取决于我们的Web / App服务器处理此问题的方式),例如:替换像JSP页面这样的单个资源。但它可能有一些缺点:
1。)你真正在运行什么版本? “嗯,我现在不太确定”
2。)安全性 - 您是否拥有针对爆炸格式的正确许可?
3。)混乱 - 丰富的文件遍布你的应用程序/网络服务器(有些人真的讨厌这个)。
我倾向于为原型Dev工作爆炸,然后转移到正确的包装,我接近珠三角。
答案 1 :(得分:13)
从部署爆炸式耳机/战争中获得的唯一真正好处是能够热插拔服务器上的文件,以及保存在包装上的时间(恕我直言可以忽略不计)。
基本上 - 这是开发阶段的一个有用功能。我不会为生产环境选择这种部署方法。
还有一些Web应用程序服务器需要针对某些深奥功能进行爆炸性战争,但这不是我在常规使用中遇到的任何事情。
答案 2 :(得分:7)
在开发阶段更加容易部署它爆炸。这样您就可以热更新一些已部署的资源(可以是JSP页面)。
对于测试和生产环境,我更喜欢打包部署:ligther,并且更易于为部署者处理。
答案 3 :(得分:4)
部署时不会爆炸WAR / EAR对Application Server没有任何影响。这是因为在下面,它们都爆炸了。
例如,如果您将一个WAR文件放在tomcat的webapp下,您将看到在您的工作目录下,您的WAR文件将在那里展开。
基本上,WAR / EAR只是归档您的文件,以便更容易移动和部署
答案 4 :(得分:3)
答案 5 :(得分:2)
AFAIK,只有爆炸战才能进行热部署。而且在开发过程中,更容易浏览服务器上的项目树。当然还有其他优点和缺点,我很乐意听到。