Korzystam z Tomcat przy użyciu pakietu tomcat6 z Ubuntu 9.04, który tworzy demona z Tomcat przy użyciu jsvc. Chciałbym znać właściwy sposób ustawiania opcji sterty Java, takich jak -Xmx
Tomcat. Chciałbym umieścić konfigurację wszędzie tam, gdzie jest najbardziej poprawna stylistycznie i gdziekolwiek jest najmniej prawdopodobne, że zostanie ona zastąpiona przez aktualizacje pakietu Ubuntu.
Opcje, które widzę teraz:
- Zakoduj je gdzieś w środku
/etc/init.d/tomcat6
. - Zakoduj je gdzieś w środku
/usr/share/tomcat6/bin/catalina.sh
. - Utwórz wiersz w,
/usr/share/tomcat6/bin/startup.sh
aby ustawić CATALINA_OPTS tak, aby miał żądane flagi, a następnie wyeksportuj CATALINA_OPTS jako zmienną środowiskową. (Wygląda na to, że zostanie odebrany przezcatalina.sh
.)
Ostatnia opcja brzmi jak najlepsza i jest zalecana (bez wyjaśnienia dlaczego) w Zwiększanie przestrzeni sterty Javy w skrypcie startowym Tomcat . Ale chciałem uzyskać drugą opinię. Czy ktoś chce potwierdzić, że nie ma lepszego sposobu?
/etc
miarę możliwości./etc/tomcat6/tomcat6.conf
jest dużym plikiem i nie chciałem tam umieszczać moich osobistych dostosowań, więc stworzyłem go$CATALINA_HOME/bin/setenv.sh
i pozyskałem/usr/sbin/tomcat6
. Mam nadzieję, że to pomoże użytkownikom CentOS (tak, wiem, że pierwotne pytanie dotyczyło Ubuntu).Jeśli zajrzysz do katalogu bin instalacji, zobaczysz skrypty catalina.sh lub .bat. Jeśli spojrzysz na te, zobaczysz, że uruchamiają odpowiednio skrypt setenv.sh lub setenv.bat, jeśli istnieje, aby ustawić zmienne środowiskowe. Odpowiednie zmienne środowiskowe opisano w komentarzach na górze strony catalina.sh/bat. Aby z nich skorzystać, należy na przykład utworzyć plik $ CATALINA_HOME / bin / setenv.sh z zawartością
W systemie Windows będziesz potrzebować czegoś takiego w setenv.bat
Dzieje się tak od tomcat 5.5 do 7. Oryginalny answear https://stackoverflow.com/questions/286007/how-to-tune-tomcat-5-5-jvm-memory-settings-with-using-the-configuration-progra
źródło
Poszukaj /etc/tomcat6/tomcat6.conf, który ma gotowe wersje JAVA_OPTS i czeka na wycofanie komentarza (ale tylko jeśli w ogóle je masz, używam Centos, a nie Ubuntu).
źródło
Najbardziej eleganckim sposobem, jaki do tej pory znalazłem, jest edycja /etc/init.d/tomcat6 i dodanie tego na górze pliku:
Inne opcje przedstawione w moim pytaniu wydają się nie działać. Po przestudiowaniu skryptu i przeprowadzeniu dalszych eksperymentów wątpię teraz, czy /usr/share/tomcat6/bin/catalina.sh i /usr/share/tomcat6/bin/startup.sh odgrywają jakąkolwiek rolę w uruchamianiu tomcat z pakietem tomcat6 Ubuntu. Zamiast; /etc/init.d/tomcat6 całkowicie zastępuje wszelkie prace, które normalnie mogą być wykonane przez catalina.sh/startup.sh.
Nadal trochę się martwię o utratę tych opcji konfiguracji w jakiejś przyszłej aktualizacji pakietu, ale sądzę, że jeśli tak się stanie, bardzo łatwo byłoby je przywrócić.
źródło