it-swarm.com.de

Tomcat 7: Wie wird die anfängliche Größe des Heapspeichers korrekt festgelegt?

Ich habe versucht, die anfängliche Größe des Heapspeichers einer Tomcat 7-Instanz (CentOS, Java -version: 1.6.0_25-b06)) anzupassen, indem ich catalina.sh die folgende Zeile hinzufügte:

export CATALINA_OPTS="-Xms=512M -Xmx=1024M"

Das Starten von Tomcat schlägt fehl und protokolliert die folgende Meldung in catalina.out:

Invalid initial heap size: -Xms=512m
Could not create the Java virtual machine.

Was ist mit diesen Optionen falsch?

65
GLA

Sie dürfen nicht = Verwenden. Benutze einfach folgendes:

export CATALINA_OPTS="-Xms512M -Xmx1024M"
109
Joachim Sauer

Verwenden Sie den folgenden Befehl, um Java Heap-Größe für Tomcat7 (Linux-Distributionen) korrekt zu erhöhen:

echo 'export CATALINA_OPTS="-Xms512M -Xmx1024M"' > /usr/share/Tomcat7/bin/setenv.sh
27
MeJ

Möglicherweise brauchen Sie nicht export, sondern fügen diese Zeile in catalina.sh hinzu:

CATALINA_OPTS="-Xms512M -Xmx1024M"
10
Phat H. VU

setenv.sh ist besser, weil Sie diese Konfiguration einfach von einem Computer auf einen anderen oder von einer Tomcat-Version auf eine andere portieren können. catalina.sh wechselt von einer Version von Tomcat zu einer anderen. Sie können setenv.sh jedoch mit jeder Version von Tomcat unverändert lassen.

Ein weiterer Vorteil ist, dass Sie den Verlauf Ihrer Änderungen leichter verfolgen können, wenn Sie ihn zu Ihrem Sicherungs- oder Versionssystem hinzufügen. Wenn Sie sehen, wie Sie setenv.sh im Verlauf ändern, sehen Sie nur Ihre eigenen Änderungen. Wenn Sie hingegen catalina.sh verwenden, sehen Sie immer nicht nur Ihre Änderungen, sondern auch die Änderungen, die mit jeder neueren Version von Tomcat geliefert wurden.

3
mentallurg

Ich bin gerade darauf gestoßen und habe Nathans Lösung implementiert:

fügen Sie die Zeile hinzu (ändern Sie die Werte nach Bedarf):

export Java_OPTS="-Xms512M -Xmx1024M"

zu /usr/share/Tomcat7/bin/setenv.sh

Wenn diese Datei nicht vorhanden ist, erstellen Sie sie und

chown root:root it
chmod 755 it

Und starten Sie dann Tomcat neu und überprüfen Sie es mit

ps aux | grep logging

Welches sollte nur die Instanz abholen und die Java Parms zeigen

1
APA

Nachdem ich viel Zeit damit verbracht habe. Ich fand, dass dies das ist, wie das setenv.bat aussehen muss. In der Batchdatei werden keine "Zeichen akzeptiert.

stellen Sie CATALINA_OPTS = -Xms512m -Xmx1024m -XX ein: PermSize = 128m -XX: MaxPermSize = 768m

hallo hallo "% CATALINA_OPTS%"

1

Es funktioniert auch ohne Verwendung des Schlüsselworts 'export'. Das habe ich in meinem setenv.sh (/usr/share/Tomcat7/bin/setenv.sh) und es funktioniert.

Betriebssystem: 14.04.1-Ubuntu Serverversion: Apache Tomcat/7.0.52 (Ubuntu) Serverbau: 30.06.2016 01:59:37 Servernummer: 7.0.52.0

Java_OPTS="-Dorg.Apache.catalina.security.SecurityListener.UMASK=`umask` -server -Xms6G -Xmx6G -Xmn1400m -XX:HeapDumpPath=/Some/logs/ -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:SurvivorRatio=8 -XX:+UseCompressedOops -Dcom.Sun.management.jmxremote.port=8181 -Dcom.Sun.management.jmxremote.authenticate=false -Dcom.Sun.management.jmxremote.ssl=false"
Java_OPTS="$Java_OPTS -Dserver.name=$HOSTNAME"
1
mdev

Passen Sie auf Änderungen an Debian-Distributionen auf! Ich habe versucht, CATALINA_OPTS In meinem Debian 7 zu ändern, und die Ergebnisse, bei denen dieser Tomcat nicht mehr gestartet wurde. Daher habe ich dieses Problem gelöst, indem ich die Eigenschaft Java_OPTS Anstelle von CATALINA_OPTS Wie folgt geändert habe

export Java_OPTS="-Xms512M -Xmx1024M"

Wechseln Sie in das Verzeichnis "Tomcat Directory"/bin

wenn Linux, dann erstelle setenv.sh, wenn Windows, dann erstelle setenv.bat

inhalt der setenv. * datei:

export CATALINA_OPTS="$CATALINA_OPTS -Xms512m"
export CATALINA_OPTS="$CATALINA_OPTS -Xmx8192m"
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m"

danach starten Sie Tomcat mit neuen Parametern neu.

erklärung und vollständige Informationen finden Sie hier

http://crunchify.com/how-to-change-jvm-heap-setting-xms-xmx-of-Tomcat/

0
Musa

Wenn es auf Ihrem Centos 7-Computer nicht funktioniert "export CATALINA_OPTS =" - Xms512M -Xmx1024M "", können Sie den Heap-Speicher in der Datei vi /etc/systemd/system/Tomcat.service ändern und diesen Wert mithilfe von ps in Ihrem Tomcat anzeigen -ef | grep Kater.

0
Birendra Rawat