web-dev-qa-db-fra.com

Avantages / inconvénients des fichiers WAR éclatés

Une réponse à une question que j'ai lue aujourd'hui a suggéré de déployer une application sous forme de guerre éclatée (décompressée) . Cela m'a fait réfléchir.

Chaque déploiement que j'ai jamais fait sur un JBoss/Tomcat a été avec un fichier WAR/ EAR . Du moins pour autant que je me souvienne.

Ai-je fait une erreur toutes ces années?

Y a-t-il des avantages à déployer une application dans sa forme développée plutôt que packagée?

59
Kevin D

Je pense que c'était ma réponse en mentionnant la GUERRE éclatée dans l'autre question. Les fichiers WAR éclatés sont plus faciles à naviguer et vous pouvez déployer des `` parties '' de votre application beaucoup plus rapidement (selon la façon dont notre serveur Web/App gère cela), par exemple Remplacez une seule ressource comme une page JSP. Cependant, cela peut présenter certains inconvénients:

1.) Quelle version utilisez-vous vraiment? "Hmmm, je ne suis pas vraiment sûr maintenant"

2.) Sécurité - Avez-vous les bonnes autorisations en place pour le format éclaté?

3.) Désordre - Des fichiers à gogo répartis sur votre application/serveur Web Nice (certaines personnes détestent vraiment cela).

J'ai tendance à exploser pour le travail de développement de prototypes, puis à passer à un emballage approprié au plus près du PRD que j'obtiens.

54
Martijn Verburg

Le seul véritable avantage que vous recevez du déploiement d'une oreille/guerre éclatée est la possibilité de remplacer à chaud les fichiers sur le serveur, ainsi que le temps économisé sur l'emballage (ce qui à mon humble avis est négligeable).

Fondamentalement - c'est une fonctionnalité utile pour les phases de développement. Je ne choisirais pas cette méthode de déploiement pour un environnement de production.

Il existe également des serveurs d'applications Web qui nécessitent des guerres éclatées pour certaines fonctionnalités ésotériques, mais ce n'est rien de ce que j'ai rencontré en utilisation régulière.

14
Yuval Adam

Au stade du développement est plus confortable à déployer, il a explosé. De cette façon, vous pouvez mettre à jour à chaud certaines ressources déployées (tout comme les pages JSP).

Pour les environnements de test et de production, je préfère plutôt le déploiement packagé: plus léger et plus facile à gérer pour les déployeurs.

8
Tomas Narros

Ne pas exploser un WAR/EAR lors du déploiement ne fait aucune différence pour le serveur d'applications. En effet, en dessous, ils sont tous explosés.

Par exemple, si vous mettez un fichier WAR sous webapp de Tomcat, vous verrez que sous votre répertoire de travail, votre fichier WAR y sera explosé.

Fondamentalement, WAR/EAR sont juste en train d'archiver vos fichiers afin qu'il soit plus facile de se déplacer et de se déployer

4
mezzie

Inconvénient: si vous êtes sous Windows, vous constaterez souvent que le système d'exploitation verrouille au hasard certains fichiers dans le .war éclaté, et il vous sera difficile de supprimer la guerre entière et de la redéployer.

3
Luca Molteni

AFAIK, le déploiement à chaud n'est possible qu'avec des guerres éclatées. Et aussi pendant le développement, il est plus facile de parcourir l'arborescence du projet sur le serveur. Bien sûr, il peut y avoir d'autres avantages et inconvénients, que je serai heureux d'entendre.

2
Petar Minchev