Größe der TCP/IP-Puffer optimieren
WebSphere Application Server verwendet den TCP/IP-Mechanismus für die Socket-Kommunikation ausgiebig. Für eine TCP/IP-Socket-Verbindung definieren die Größen von Sende- und Empfangspuffern das Empfangsfenster. Das Empfangsfenster gibt an, wie viele Daten gesendet und nicht empfangen werden können, bevor die Sendeoperation unterbrochen wird. Wenn zu viele Daten gesendet werden, kommt es zu einem Pufferüberlauf, der die Übertragung unterbricht. Der Mechanismus, der die Unterbrechung der Datenübertragung steuert, wird als Flusssteuerung bezeichnet. Wenn die Größe des Empfangsfensters für die TCP/IP-Puffer zu klein ist, kommt es häufiger zu einem Überlauf des Empfangsfensterpuffers, und der Flusssteuerungsmechanismus stoppt die Datenübertragung, bis der Empfangspuffer leer ist.
Informationen zu diesem Vorgang
Die Flusssteuerung kann eine beträchtliche Menge an CPU-Zeit
beanspruchen und aufgrund der Unterbrechungen der Datenübertragung zu einer höheren Latenzzeit im Netz führen.
Es wird empfohlen, dass Sie die Werte für die Puffergröße erhöhen, um die Ablaufsteuerung unter normalen Betriebsbedingungen zu vermeiden.
Größere Puffer verringern das Risiko, dass die Flusssteuerung zum Einsatz kommt, und bewirken eine bessere CPU-Auslastung.
Zu große Puffer können sich jedoch manchmal negativ auf die Leistung auswirken.
Wenn die TCP/IP-Puffer zu groß sind und Anwendungen die Daten nicht schnell genug verarbeiten, können die Paging-Aktivitäten zunehmen.
Das Ziel ist, einen Wert anzugeben, der hoch genug ist, um die Flusssteuerung zu vermeiden, aber nicht so groß ist,
dass im Puffer mehr Daten angehäuft werden, als das System verarbeiten kann.
Die Standardpuffergröße sind
8 KB. Die maximale Größe sind 8 MB (8096 KB). Die optimale Puffergröße richtet sich nach mehreren Netzumgebungsfaktoren, z. B.
Typ von Switches und Systemen, Timing der Empfangsbestätigung, Fehlerrate und Netztopologie, Hauptspeichergröße
und Datenübertragungsgröße. Wenn die Datenübertragungsgröße extrem hoch ist,
können Sie die Puffergrößen bis hin zum maximalen Wert konfigurieren, um den Durchsatz zu verbessern, die Einsätze der Flusssteuerung
und die CPU-Kosten zu reduzieren.
Die Puffergrößen für die Socket-Verbindungen zwischen Web-Server und
WebSphere Application Server sind auf 64 KB eingestellt. In den meisten Fällen ist dieser Wert angemessen.
Die Flusssteuerung kann zum Problem werden, wenn eine Anwendung den JDBC-Treiber des
IBM® Developer Kit for Java(TM) oder den JDBC-Treiber der
IBM Toolbox for
Java™ für den Zugriff auf eine ferne Datenbank verwendet.
Wenn die Datenübertragungen sehr umfangreich sind, kann die Flusssteuerung sehr viel CPU-Zeit beanspruchen.
Wenn Sie den JDBC-Treiber der IBM Toolbox
for Java verwenden,
können Sie mit angepassten Eigenschaften die Puffergrößen für jede Datenquelle konfigurieren.
Es wird empfohlen, große Puffergrößen zu definieren, z. B. 1 MB.
Einige systemweite Einstellungen können die Standardpuffergröße von 8 KB für Sockets überschreiben.
Bei einigen Anwendungen, wie z. B. WebSphere Commerce Suite,
verringert eine Puffergröße von 180 KB die Flusssteuerung und hat gewöhnlich keine negativen Auswirkungen auf das Paging.
Der optimale Wert richtet sich nach bestimmten Systemeigenschaften.
Sie müssen möglicherweise mehrere Werte ausprobieren, bevor Sie die ideale Puffergröße für Ihr System finden.
TCP/IP kann die Ursache für starke Verzögerungen bei Remote-Methoden sein.
Weitere Informationen finden Sie
im Artikel "TCP/IP network settings" in Running IBM WebSphere Application Server on System
p and AIX: Optimization and Best Practices. Sehen Sie sich außerdem den Abschnitt TCP streaming workload tuning an.
Weitere Informationen finden Sie im Abschnitt Linux Tuning.
Informationen
zum Optimieren der TCP/IP-Puffergrößen finden Sie im Dokument
Beschreibung von TCP-Eigenschaften in Windows 2000 und Windows Server 2003.
Setzen Sie die Einstellung "TcpWindowSize" auf 8388608 oder 16777216.
Gehen Sie zum Ändern des systemweiten Werts wie folgt vor:
![[IBM i]](../images/iseries.gif)
![[z/OS]](../images/ngzos.gif)
Vorgehensweise
![[z/OS]](../images/ngzos.gif)
![[IBM i]](../images/iseries.gif)
Ergebnisse
Wiederholen Sie diesen Prozess, bis Sie die ideale Puffergröße gefunden haben.
![[z/OS]](../images/ngzos.gif)
![[IBM i]](../images/iseries.gif)
Nächste Schritte
Die TCP/IP-Puffergrößen wurden geändert. Wiederholen Sie diesen Prozess, bis Sie die ideale Puffergröße gefunden haben.
Weitere Informationen zur TCP/IP-Leistung finden Sie in Kapitel 5 der Veröffentlichung "Performance
Capabilities Reference". Links zu verschiedenen Ausgaben von "Performance Capabilities
Reference" finden Sie in der Ressourcenbibliothek zum Leistungsmanagement.