La guerre de déploiement sur Tomcat prend une éternité
J'ai un Grain d'application, construit à un fichier war (~30 mo). Lorsque je tente de déployer le fichier war dans Tomcat 6 via le gestionnaire d'application, il prend plus de 10 minutes à déployer, ou se bloque indéfiniment. Quand il se bloque, je peux redémarrer Tomcat et de l'application est généralement déployé, mais parfois, je dois répéter le processus. J'ai aussi remarqué que pendant le déploiement, le processus Java maxes de la CPU et de la RAM est à ~10 à 15%.
Je suis assez nouveau à Java, donc je ne sais pas si c'est normal, mais je ne peux pas imaginer comment elle pourrait l'être. Est-il quelque chose que je peux faire pour l'exécuter plus lisse, plus rapide? Est-il une meilleure façon de déployer de Tomcat gestionnaire d'application?
OriginalL'auteur Thody | 2009-11-24
Vous devez vous connecter pour publier un commentaire.
- Je télécharger la GUERRE à mon répertoire home, cd /usr/local/tomcat, puis exécuter les commandes suivantes:
Une autre remarque sur le déploiement à chaud, avec 100% d'utilisation du PROCESSEUR, l'application est complètement incapable de toute façon, il y a peu d'avantages à garder Tomcat en ligne pendant le déploiement.
OriginalL'auteur Kaleb Brasee
Certainement vérifier les logs de Tomcat pour les erreurs/avertissements.
Vous avez probablement un peu cher, sensible à la logique de code dans l'un des
ServletContextListener
s. Ils sont généralement initialisé au démarrage. Si oui, alors je debug/profil pour une question de performance/de fuites.OriginalL'auteur BalusC
Comme indiqué, je voudrais copier la guerre dans le répertoire webapps et laissez tomcat ne le déploiement, il est aussi plus rapide de gagner du temps.
Tomcat et Jetty prendra en charge un déploiement à chaud. Ils ont simplement surveiller le répertoire de déploiement pour les changements, de sorte que vous pouvez simplement copier le .la guerre de fichier dans ce répertoire, et le serveur va annuler le déploiement d'/redéployer.
Si vous utilisez un serveur distant vérifier le décalage n'est pas le moment de prendre pour télécharger la guerre à un serveur distant sur le réseau.
OriginalL'auteur Karl
N'utilisez pas le gestionnaire d'applications. Mon chemin est de le télécharger quelque part hors du répertoire webapps et puis le copier sur répertoire webapps. Prend beaucoup moins de deplyoment temps.
Je copie le fichier war, pas les fichiers extraits.
OriginalL'auteur Trick
Il n'est pas toujours que vous avez les droits d'accès suffisants pour les mettre manuellement les fichiers dans le
webapps
dossier -- vous êtes censé utiliser l'Application Tomcat Manager pour.war
fichier de déploiement, et le besoin pour le faire fonctionner.Pour moi, il est courant que le processus de téléchargement d'un
.war
fichier sur le serveur ne peut pas complète, il est coincé quelque part dans le moyen et le fichier n'est que partiellement téléchargé sur le serveur, peu importe combien de fois j'ai réessayer. Dans de telles situations, j'ai trouvé qu'il vaut la peine d'essayer un autre navigateur. Par exemple, je me suis retrouvé coincé à l'aide de Google Chrome, mais une fois que je suis passé à un fraîchement commencé le navigateur Firefox, les choses travaillé à.OriginalL'auteur Gruber
Ce peut-être se rapportent à ce BUG de JDK
Je lus cet article, Tomcat7 commence trop tard sur Ubuntu 14.04 x64 et résolu mon problème.
Essayer de le résoudre par Remplacement securerandom.source=file:/dev/urandom avec securerandom.source=file:/dev/./urandom dans $JAVA_PATH/jre/lib/security/java.sécurité
OriginalL'auteur Tuấn Lé