J'exécute Tomcat à l'aide du paquet tomcat6 d'Ubuntu 9.04, qui crée un démon de Tomcat à l'aide de jsvc. J'aimerais savoir comment définir les options -Xmx
de segment de mémoire Java, comme pour Tomcat. J'aimerais placer la configuration là où elle est la plus stylistiquement correcte et là où elle risque le moins d'être écrasée par les mises à jour de paquets Ubuntu.
Les options que je vois maintenant:
- Codez-les en dur quelque part
/etc/init.d/tomcat6
. - Codez-les en dur quelque part
/usr/share/tomcat6/bin/catalina.sh
. - Créez une ligne
/usr/share/tomcat6/bin/startup.sh
pour définir les indicateurs souhaités sur CATALINA_OPTS, puis exportez CATALINA_OPTS en tant que variable d'environnement. (On dirait qu'il va être ramassé parcatalina.sh
.)
La dernière option semble être la meilleure et elle est recommandée (sans expliquer pourquoi) dans Augmentation de l'espace de Java dans le script de démarrage de Tomcat . Mais je voulais avoir un deuxième avis. Quelqu'un veut confirmer qu'il n'y a pas de meilleur moyen?
/etc
si possible./etc/tomcat6/tomcat6.conf
fichier est volumineux et je ne voulais pas y insérer mes personnalisations personnelles. Je l’ai donc créé$CATALINA_HOME/bin/setenv.sh
et recherché/usr/sbin/tomcat6
. J'espère que cela aidera les utilisateurs de CentOS (oui, je sais que la question initiale était pour Ubuntu).Si vous regardez dans le répertoire bin de votre installation, vous verrez les scripts catalina.sh ou .bat. Si vous regardez dans ceux-ci, vous verrez qu'ils exécutent respectivement un script setenv.sh ou setenv.bat, s'il existe, pour définir des variables d'environnement. Les variables d'environnement pertinentes sont décrites dans les commentaires en haut de catalina.sh/bat. Pour les utiliser, créez par exemple un fichier $ CATALINA_HOME / bin / setenv.sh avec le contenu
Pour Windows, vous aurez besoin, dans setenv.bat, de quelque chose comme:
Ceci est vrai des versions de tomcat 5.5 à 7. Réponses originales https://stackoverflow.com/questions/286007/how-to-tune-tomcat-5-5-jvm-memory-settings-without-using-the-configuration-progra
la source
Recherchez le fichier /etc/tomcat6/tomcat6.conf qui contient JAVA_OPTS prêt à attendre le commentaire de votre part (mais si vous en avez un, je n’utilise pas Centos, pas Ubuntu).
la source
La manière la plus élégante que j'ai trouvée jusqu'à présent consiste à éditer /etc/init.d/tomcat6 et à l'ajouter en haut du fichier:
Les autres options que j'ai décrites dans ma question ne semblent pas fonctionner. Après avoir étudié le script et expérimenté davantage, je doute maintenant que /usr/share/tomcat6/bin/catalina.sh et /usr/share/tomcat6/bin/startup.sh jouent un rôle quelconque dans le démarrage de tomcat avec le paquet tomcat6 Ubuntu. Au lieu; Le fichier /etc/init.d/tomcat6 remplace complètement tout travail normalement effectué par catalina.sh/startup.sh.
Je suis encore un peu inquiet de perdre ces options de configuration dans une future mise à jour de paquet, mais je suppose que si cela se produit, il serait assez facile de les restaurer.
la source