Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

Version 1 Nächste Version anzeigen »

VM Start Parameter

Änderungen an den Java VM Start Parametern sind eine Maßnahme des Performancetuning und der Leistungsverbesserung. Durch diese Änderungen können u.A. OutOfMemoryErrors vermieden werden, wie sie z.B. durch einen zu kleinen 'PermGen Space' entstehen können.

[Bearbeiten] setenv.sh und setenv.bat

Die Java VM Start Parameter können verändert werden, indem Sie im Tomcat Installationsverzeichnis im Ordner 'bin' die Datei 'setenv.sh' (Linux) bzw. 'setenv.bat' (Windows) anlegen. In dieser Datei können Sie einige Umgebungsvariablen setzen, die dann beim Starten herangezogen werden. Diese Umgebungsvariablen sind in der (schon vorhandenen) Datei 'catalina.sh' bzw. 'catalina.bat' dokumentiert.

In einer Nuclos Installation befindet sich das oben erwähnte Verzeichnis unter '<nuclos>/tomcat/apache-tomcat-<version>/bin'.

Vorschlag für eine setenv.sh Datei (Linux):

# Created by Thomas Pasch # see catalina.sh for explanation JAVA_OPTS="" CATALINA_OPTS="-server -ea -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+UseThreadPriorities -Xmx1236m -ms512m -XX:+PrintGCTimeStamps -XX:+HeapDumpOnOutOfMemoryError -XX:+TraceClassUnloading" # http://www.theserverside.com/discussions/thread.tss?thread_id=63241 #-Xloggc:$CATALINA_HOME/logs/gc.log or Xloggc:%CATALINA_HOME%/logs/gc.log #-XX:+PrintHeapAtGC #-XX:+PrintGCDetails #-XX:+PrintGCTimeStamps #-XX:-HeapDumpOnOutOfMemoryError #-XX:+UseConcMarkSweepGC #-XX:-TraceClassUnloading # http://stackoverflow.com/questions/202502/appropriate-tomcat-5-5-start-up-parameters-to-tune-jvm-for-extremely-high-demand # http://www.oracle.com/technetwork/java/javase/tech/index-jsp-136373.html # http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html 

Vorschlag für eine setenv.bat Datei (Windows):

rem Created by Thomas Pasch rem see catalina.sh for explanation set "JAVA_OPTS=" set "CATALINA_OPTS=-ea -XX:PermSize=128M -XX:MaxPermSize=256M -XX:+UseThreadPriorities -Xmx1236m -Xms512m -XX:+PrintGCTimeStamps -XX:+HeapDumpOnOutOfMemoryError -XX:+TraceClassUnloading"

[Bearbeiten] Windows Dienst/Service

Das Modifizieren des von Nuclos installierten Dienstes ist mit folgendem Windows Script möglich:

set CATALINA_HOME=C:\Nuclos3.6\tomcat\apache-tomcat-7.0.28 set CATALINA_BASE=%CATALINA_HOME% set JAVA_HOME=C:\Program Files\Java\jre6 C:\Nuclos3.6\bin\nuclosx64.exe //US//nuclos.nuclos --JvmOptions "-Dcatalina.base=%CATALINA_BASE%#-Dcatalina.home=%CATALINA_HOME%#-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed#-Djava.io.tmpdir=%CATALINA_BASE%\temp#-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager#-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties#-ea#-XX:PermSize=128M#-XX:MaxPermSize=256M#-XX:+UseThreadPriorities#-Xmx1236m#-Xms512m#-XX:+PrintGCTimeStamps#-XX:+HeapDumpOnOutOfMemoryError#-XX:+TraceClassUnloading" --StartMode=jvm --StopMode=jvm --Startup=manual --Classpath "%JAVA_HOME%/lib/tools.jar;%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_HOME%\bin\tomcat-juli.jar" --StartClass=org.apache.catalina.startup.Bootstrap --StartParams=start --StopClass=org.apache.catalina.startup.Bootstrap --StopParams=stop

Erläuterungen:

  • 'nuclos.nuclos' ist der Dienstnahme. Der Teil hinter dem Punkt ist der im Installer angegebene Nuclos Instanzname. Dieser kann bei Ihnen anders lauten.
  • In dem Script sind die VM Start Parameter ab '-ea' beispielhaft. Die Parameter davor sind dagegen verpflichtend.
  • Nein, ich weiss auch nicht, warum diese Änderung unter Windows kompliziert ist.

Weiterführende Informationen zum Tomcat als Windows Dienst sind im Howto zu finden.

  • Keine Stichwörter