Einstellungen für virtuelle Java-Maschine (JVM)

Auf dieser Seite können Sie die JVM-Konfiguration (Java Virtual Machine) für den Anwendungsserverprozess anzeigen und ändern.

Klicken Sie zum Aufrufen dieser Seite der Administrationskonsole auf Server > Anwendungsserver > Servername > Prozessdefinition > Java Virtual Machine.

Register "Konfiguration"

Klassenpfad
Gibt den Standardklassenpfad an, in dem der Code der virtuellen Java-Maschine (JVM) nach Klassen sucht.

Geben Sie jeden Klassenpfadeintrag in einer Tabellenzeile ein. Es ist nicht erforderlich, am Ende eines Eintrags einen Doppelpunkt bzw. ein Semikolon hinzuzufügen.

Datentyp String
Einheiten Klassenpfad
Boot-Klassenpfad
Gibt die Klassen des Bootprogramms und die Ressourcen für den JVM-Code an. Diese Option ist nur für JVM-Anweisungen verfügbar, die Klassen des Bootprogramms und Ressourcen unterstützen. Sie können mehrere Pfade je nach Betriebssystem des Knotens mit einem Doppelpunkt (:) oder einem Semikolon (;) trennen.
Datentyp String
Klassenladen im ausführlichen Modus
Gibt an, ob die Debug-Ausgabe für das Klassenladen im ausführlichen Modus erfolgen soll. Der Standardwert sieht vor, den ausführlichen Modus für das Klassenladen nicht zu aktivieren.
Datentyp Boolescher Wert
Standardwert false
Garbage-Collection im ausführlichen Modus
Gibt an, ob die Debug-Ausgabe für die Garbage-Collection im ausführlichen Modus erfolgen soll. Der Standardwert sieht vor, den ausführlichen Modus für die Garbage-Collection nicht zu aktivieren.
Datentyp Boolescher Wert
Standardwert false
JNI im ausführlichen Modus
Gibt an, ob die Debug-Ausgabe für den Aufruf nativer Methoden im ausführlichen Modus erfolgen soll. Der Standardwert sieht vor, den ausführlichen Modus für JNI (Java Native Interface) nicht zu aktivieren.
Datentyp Boolescher Wert
Standardwert false
Ausgangsgröße des Freispeichers
Gibt die Ausgangsgröße des Freispeichers an (in MB), die dem JVM-Code zur Verfügung steht.

Die Startzeit kann sich verkürzen, wenn Sie die Mindestgröße für den Heap-Speicher heraufsetzen. Die Anzahl der Garbage-Collection-Durchläufe verringert sich, und es wird eine Durchsatzsteigerung von 10 % erzielt.

Im Allgemeinen verbessert sich der Durchsatz durch Vergrößern des Java-Heap-Speichers, solange sich der Heap-Speicher innerhalb des physischen Speichers befindet. Sobald der Heap-Speicher auf die Festplatte ausgelagert wird, verschlechtert sich der Java-Durchsatz drastisch.

Datentyp Integer
Standardwert 64 für OS/400, 50 für alle anderen Plattformen
Maximale Größe des Heap-Speichers
Gibt die maximale Größe des Heap-Speichers, die dem JVM-Code zur Verfügung steht, in MB an.

Die Startzeit kann sich verkürzen, wenn Sie die Größe des Heap-Speichers heraufsetzen. Die Anzahl der Garbage-Collection-Durchläufe verringert sich, und es wird eine Durchsatzsteigerung von 10 % erzielt.

Im Allgemeinen verbessert sich der Durchsatz durch Vergrößern des Java-Heap-Speichers, solange sich der Heap-Speicher innerhalb des physischen Speichers befindet. Sobald der Heap-Speicher auf die Festplatte ausgelagert wird, verschlechtert sich der Java-Durchsatz drastisch. Die maximale Heap-Größe sollte deshalb auf einen Wert gesetzt werden, der niedrig genug ist, um das Verbleiben des Heap-Speichers im physischen Speicher zu gewährleisten.

Datentyp Integer
Standardwert 0 für OS/400, 256 für alle anderen Plattformen. Wählen Sie einen möglichst kleinen Wert, um Seitenauslagerungen (Paging) oder Prozessauslagerungen (Swapping) zu vermeiden.
HProf ausführen
Gibt an, ob Unterstützung für HProf-Profiler verwendet werden soll. Wenn Sie einen anderen Profiler verwenden möchten, geben Sie die benutzerdefinierten Profiler-Einstellungen über die HProf-Parameter ein. Der Standardwert sieht vor, die HProf-Profiler-Unterstützung nicht zu aktivieren.

Wenn Sie das Merkmal "HProfs ausführen" auf "true" einstellen, müssen Sie Befehlszeilenparameter für Profiler als Werte für das Merkmal "HProf-Parameter" angeben.

Datentyp Boolescher Wert
Standardwert false
HProf-Parameter
Gibt die Befehlszeilenparameter für Profiler an, die an den JVM-Code, der den Anwendungsserverprozess startet, übergeben werden sollen. Sie können Parameter angeben, wenn die Unterstützung für HProf-Profiler aktiviert ist.

HProf-Parameter sind nur erforderlich, wenn das Merkmal "HProfs ausführen" auf "true" eingestellt ist.

Datentyp String
Debug-Modus
Gibt an, ob die JVM im Debug-Modus ausgeführt werden soll. Der Standardwert sieht vor, dass der Debug-Modus nicht aktiviert wird.

Wenn Sie das Merkmal "Debug-Modus" auf "true" einstellen, müssen Sie Befehlszeilenparameter für das Debugging als Werte für das Merkmal "Debug-Parameter" angeben.

Datentyp Boolescher Wert
Standardwert false
Debug-Parameter
Gibt die Debug-Befehlszeilenparameter an, die an den JVM-Code, der den Anwendungsserverprozess startet, übergeben werden sollen. Sie können Parameter angeben, wenn der Debug-Modus aktiviert ist.

Debug-Parameter sind nur erforderlich, wenn das Merkmal "Debug-Modus" auf "true" eingestellt ist.

Datentyp String
Einheiten Java-Befehlszeilenparameter
Generische JVM-Parameter
Gibt die Befehlszeilenparameter an, die an den JVM-Code, der den Anwendungsserverprozess startet, übergeben werden sollen.

Im Folgenden sind die optionalen Befehlszeilenparameter aufgeführt, die Sie im Feld General JVM Arguments eingeben können:

  • -Xquickstart: Sie können diesen Wert verwenden, um eine anfänglich weniger optimale Kompilierung als im Standardmodus durchzuführen. Später können Sie die Kompilierung in Abhängigkeit von einigen Testergebnissen noch einmal ganz neu im Standardmodus durchführen. Verwenden Sie "quickstart" für Anwendungen, für die sofortige schnelle Antwortzeiten wichtiger sind als dauerhafter Durchsatz. In einigen Debug-Szenarios, Testumgebungen und Tools mit kurzer Laufzeit können Startzeitverbesserungen zwischen 15 und 20 % erzielt werden. Mit -DCOPT_NQREACHDEF kann die Startzeit um weitere 15 % verbessert werden.
  • -Xverify:none: Wenn Sie diesen Wert verwenden, wird die Klassenüberprüfung während des Ladens der Klassen übersprungen. Mit -Xverify:none und aktiviertem JIT-Compiler kann die Startzeit um 10 bis 15 % verbessert werden.
  • -Xnoclassgc: Sie können diesen Wert verwenden, um die Garbage-Collection für Klassen im Hinblick auf eine verstärkte Wiederverwendung von Klassen zu inaktivieren und somit eine geringfügig höheren Durchsatz zu erzielen. Die Garbage-Collection für Klassen ist standardmäßig aktiviert, aber es wird empfohlen, sie zu inaktivieren. Die Garbage-Collection können Sie mit der Konfigurationseinstellung verbose:gc überwachen.
  • -Xgcthreads: Sie können mehrere Garbage-Collection-Threads gleichzeitig verwenden. Dieses Verfahren wird als parallele Garbage-Collection bezeichnet. Wenn Sie diesen Wert im Feld Generische JVM-Argumente eingeben, müssen Sie auch die Anzahl der Prozessoren in Ihrer Maschine eingeben, z. B. -Xgcthreads=Anzahl_Prozesse. Es wird empfohlen, parallele Garbage-Collection zu verwenden, wenn Ihre Maschine mehrere Prozessoren besitzt. Dieses Argument gilt nur für IBM Developer Kit.
  • -Xnocompactgc: Dieser Wert inaktiviert die Heap-Komprimierung, die die aufwendigste Operation der Garbage-Collection ist. Vermeiden Sie die Komprimierung in IBM Developer Kit. Wenn Sie die Heap-Komprimierung inaktivieren, fällt der damit in Zusammenhang stehende Aufwand weg. Wenn Sie diesen Wert im Feld Generische JVM-Argumente eingeben, müssen Sie auch die Anzahl der Prozessoren in Ihrer Maschine eingeben, z. B. -Xnocompactgc=Anzahl_Prozesse.
  • -Xinitsh: Mit diesem Wert können Sie die anfängliche Größe des Heap-Speichers festlegen, in dem die Klassenobjekte gespeichert werden. Die Methodendefinitionen und statischen Felder werden zusammen mit den Klassenobjekten gespeichert. Obwohl die Größe des Heap-Speichers des Systems nach oben hin nicht beschränkt ist, sollten Sie die Anfangsgröße so wählen, dass kein Risiko besteht, dass der Heap-Speicher des Systems vergrößert werden muss, was dazu führen würde, dass Aufrufe an den Speichermanager des Betriebssystems abgesetzt würden. Eine angemessene Anfangsgröße des Heap-Speichers lässt sich anhand der Anzahl der Klassen, die in das WebSphere-Produkt geladen werden (ca. 8.000 Klassen) und deren durchschnittlicher Größe berechnen. Wenn Sie Kenntnisse der Anwendung haben, können Sie die in der Anwendung verwendeten Klassen in die Berechnung mit einbeziehen.
  • -Xmc: Die lokale Heap-Größe für den Thread ist ein Anteil des Heap-Speichers, der exklusiv für einen Thread reserviert wird. Aufgrund der lokalen Heap-Größe für den Thread muss der Thread bei der Reservierung von Speicher für Objekte nicht den gesamten Heap-Speicher sperren. Wenn der lokale Heap-Speicher des Threads jedoch voll ist, erfolgt die Reservierung von Speicher für Objekte über den Heap-Speicher, der synchronisiert werden muss. Eine gut berechnete lokale Cache-Größe ist für den Durchsatz entscheidend und setzt Kenntnisse der Anwendung und der Anwendungsobjekte voraus.
  • -Xml: Mit diesem Wert können Sie den Grenzwert für eine Objektgröße festlegen, für die Speicher aus dem lokalen Cache reserviert wird. Für Objekte, die diesen Grenzwert überschreiten, muss Speicher aus dem regulären Heap-Speicher reserviert werden. Ordnen Sie so viele Objekte wie möglich aus dem lokalen Cache zu. Andernfalls wird der lokale Cache überflüssig, weil er nicht dynamisch wächst. Wenn Sie wissen, dass einige Objekte sehr groß werden, reservieren Sie für diese Speicher aus dem regulären Heap-Speicher.

Datentyp String
Einheiten Java-Befehlszeilenparameter
Name der ausführbaren JAR-Datei
Gibt einen vollständigen Pfadnamen für eine ausführbare JAR-Datei an, die vom JVM-Code verwendet wird.
Datentyp String
Einheiten Pfadname
JIT inaktivieren
Gibt an, ob der JIT-Compiler des JVM-Codes inaktiviert werden soll.

Wenn Sie den JIT-Compiler inaktivieren, nimmt der Durchsatz merklich ab. Im Hinblick auf den Durchsatz sollte JIT deshalb aktiviert bleiben.

Datentyp Boolescher Wert
Standardwert false (JIT aktiviert)
Empfohlene Einstellung JIT aktiviert
Name des Betriebssystems
Gibt die JVM-Einstellungen für ein bestimmtes Betriebssystem an. Der Prozess verwendet nach dem Start die JVM-Einstellungen für das Betriebssystem des Knotens.
Datentyp String

Zugehörige Informationen

Knöpfe in der Adminstrationskonsole
Funktionen auf den Seiten der Administrationskonsole
Benutzerdefinierte Merkmale