Liberty-Profil optimieren
Sie können Parameter und Attribute des Liberty-Profils optimieren.
Informationen zu diesem Vorgang
Vorgehensweise
- JVM optimieren Die Optimierung der JVM ist der wichtigste Optimierungsschritt bei der Konfiguration einer Entwicklungs- oder einer Produktionsumgebung. Wenn Sie die JVM für das Liberty-Profil optimieren, verwenden Sie die Datei jvm.options im Verzeichnis ${server.config.dir}. Sie können alle JVM-Argumente, die Sie verwenden möchten, nacheinander mit jeweils einem Argument pro Zeile angeben. Weitere Informationen finden Sie unter Liberty Profile-Umgebung anpassen. Nachfolgend sehen Sie ein Beispiel für die Datei jvm.options:
-Xms50m -Xmx256m
In einer Entwicklungsumgebung, in der schnellere Serverstartzeiten erwünscht sind, können Sie die Mindestgröße des Heapspeichers auf einen kleineren Wert und die maximale Größe des Heapspeichers auf den für Ihre Anwendung erforderlichen Wert setzen. In einer Produktionsumgebung kann durch Festlegen desselben Werts für die Mindestgröße und die maximale Größe des Heapspeichers die beste Leistung erzielt werden, da in diesem Fall Heapspeichererweiterungen und -verkleinerungen vermieden werden.
- Transportkanalservices optimieren Transportkanalservices verwalten Clientverbindungen, Ein-/Ausgabeverarbeitung für HTTP, Thread-Pools und Verbindungspools. Für Anwendungen im Liberty-Profil sind die folgenden Attribute für verschiedene Elemente verfügbar, die zur Verbesserung der Laufzeitleistung und/oder Skalierbarkeit verwendet werden können. Informationen zu diesen Attributen finden Sie unter Konfigurationselemente in der Datei 'server.xml'.
- maxKeepAliveRequests von httpOptions
- Diese Option gibt die maximale Anzahl persistenter Anforderungen an, die
in einer einzelnen HTTP-Verbindung zulässig sind, wenn persistente Verbindungen
aktiviert sind. Der Wert -1 steht für eine unbegrenzte Anzahl. Diese
Option unterstützt Anwendungen mit geringer Latenzzeit oder hohem Durchsatz und die Verwendung von SSL-Verbindungen in Situationen, wenn der Aufbau einer neuen Verbindung aufwendig ist. Sehen Sie sich das Beispiel für die Codierung dieser Option in der Datei server.xml an:
<httpOptions maxKeepAliveRequests="-1" />
- maxPoolSize von connectionManager
- Diese Option gibt die maximale Anzahl physischer Verbindungen für den
Verbindungspool an. Der Standardwert ist 50.
Die optimale Einstellung richtet sich nach den Anwendungsmerkmalen.
Für eine Anwendung, in der jeder Thread eine Verbindung zur Datenbank anfordert,
könnten Sie mit einer 1:1-Zuordnung zum Attribut coreThreads beginnen. Sehen Sie sich das Beispiel für die Codierung dieser Option in der Datei server.xml an:
<connectionManager ... maxPoolSize="40" />
- purgePolicy von connectionManager
- Diese Option gibt an, welche Verbindungen gelöscht werden sollen, wenn eine veraltete Verbindung im Pool
gefunden wird. Der Standardwert umfasst den gesamten
Pool. Es kann sich als besser erweisen, nur die fehlschlagende Verbindung zu löschen. Sehen Sie sich das Beispiel für die Codierung dieser Option in der Datei server.xml an:
<connectionManager ... purgePolicy="FailingConnectionOnly" />
- numConnectionsPerThreadLocal von connectionManager
- Diese Option gibt die Anzahl von Datenbankverbindungen an, die für jeden Thread des Steuerprogramms (Executor) zwischengespeichert werden sollen. Mit dieser Einstellung kann eine wesentliche Verbesserung auf großen Multi-Core-Maschinen (8+) erzielt werden, indem die angegebene Anzahl der Datenbankverbindungen für jeden Thread reserviert wird.
- Durch die Verwendung eines lokalen Speichers für Threads für Verbindungen kann die Leistung von Anwendungen auf
Multithread-Systemen verbessert werden. Wenn der Wert für numConnectionsPerThreadLocal auf 1 oder höher gesetzt wird,
werden diese Verbindungen pro Thread im lokalen Speicher für Threads gespeichert.
Bei der Verwendung von numConnectionsPerThreadLocal sollten Sie zwei andere Werte
berücksichtigen:
- Anzahl der Anwendungsthreads
- Maximale Anzahl der Verbindungen im Verbindungspool
<connectionManager ... numConnectionsPerThreadLocal="1" />
- statementCacheSize von dataSource
- Diese Option gibt die maximale Anzahl zwischengespeicherter ausführbarer Anweisungen
pro Verbindung an. Zum Festlegen dieser Option müssen folgende Voraussetzungen erfüllt sein:
- Überprüfen Sie den Anwendungscode (oder einen aus der Datenbank oder dem Datenbanktreiber zusammengestellten SQL-Trace) für alle eindeutigen ausführbaren Anweisungen.
- Stellen Sie sicher, dass die Cachegröße größer als die Anzahl der Anweisungen ist.
<dataSource ... statementCacheSize="60" >
- isolationLevel von dataSource
- Die Isolationsstufe der Datenquelle gibt den Grad der Datenintegrität und
des gemeinsamen Zugriffs auf die Daten an, der wiederum die Stufe der Datenbanksperrung steuert.
Es sind vier verschiedene Optionen verfügbar, die von bester Leistung
(geringste Integrität) bis schlechteste Leistung (höchste Integrität) sortiert sind.
- TRANSACTION_READ_UNCOMMITTED
- Fehlerhafte Leseoperationen, nicht wiederholbare Leseoperationen und Scheinleseoperationen können auftreten.
- TRANSACTION_READ_COMMITTED
- Fehlerhafte Leseoperationen werden verhindert. Es können nicht wiederholbare und Scheinleseoperationen auftreten.
- TRANSACTION_REPEATABLE_READ
- Fehlerhafte Leseoperationen und nicht wiederholbare Leseoperationen werden verhindert. Es können Scheinleseoperationen auftreten.
- TRANSACTION_SERIALIZABLE
- Fehlerhafte Leseoperationen, nicht wiederholbare Leseoperationen und Scheinleseoperationen werden verhindert.
<dataSource ... isolationLevel="TRANSACTION_READ_COMMITTED">
- Vermindern Sie Reaktionszeit von Servlets.
Um die Reaktionszeit von Servlets zu vermindern, müssen Sie das folgende Attribut der Datei server.xml hinzufügen:
<webContainer skipMetaInfResourcesProcessing="true"/>
- Leerlaufzeit der Server-CPU verringern
Um die Leerlaufzeit der Server-CPU zu verringern, fügen Sie das folgende Attribut der Datei server.xml hinzu:
<applicationMonitor dropinsEnabled="false" updateTrigger="disabled"/> <config updateTrigger="disabled"/>
Wenn die Attribute hinzugefügt werden, verfolgt der Server nicht mehr, ob Konfigurations- oder Anwendungsaktualisierungen stattfinden.
Weitere Informationen zu den Beschreibungen der Konfigurationselemente finden Sie unter Konfigurationselemente in der Datei 'server.xml'.
Untergeordnete Themen
- Liberty-Profil für sichere Anwendungen optimieren
Sie können das Liberty-Profil optimieren, um die Leistung für sichere Anwendungen zu maximieren. Eingebundene LDAP-Repositorys im Liberty-Profil optimieren
Sie können die Leistung der eingebundenen LDAP-Repositorys verbessern, indem Sie die Cache- und Kontextpoolelemente in der Datei server.xml überwachen und anpassen.

Nutzungsbedingungen für Information Center | Feedback

http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_tun
Dateiname: twlp_tun.html