Erkennen langsamer Anwendungen
In diesem Leitfaden wird eine langsame Anwendung als Microsoft Windows-Anwendung mit beeinträchtigter Leistung identifiziert. Eine langsame Anwendung weist mindestens eines der folgenden Symptome auf:
DIE CPU- und Netzwerkauslastung ist gering.
Der Computer wartet anscheinend auf etwas. Häufig wartet die Anwendung im Netzwerk.
Wenn Sie den Nagle-Algorithmus über die TCP _ NODELAY-Socketoption deaktivieren, wird die Leistung erhöht.
Dies weist auf andere Probleme hin und sollte nicht als Lösung betrachtet werden. Wenn Sie den Nagle-Algorithmus deaktivieren, erhöht sich der Protokollaufwand. Verwenden Sie diese Methode nicht als Korrektur für die fehlerhaften Anwendungen– nur als Hinweis darauf, dass die Anwendung andere Arbeit zum Beheben von Leistungsproblemen benötigt.
Die Anwendung weist einen hohen Mehraufwand auf.
Bestimmen Sie zum Berechnen des Anwendungsaufwands, wie viele Daten In jede Richtung übertragen werden sollen. Verwenden Sie dann Netstat, und fügen Sie (für Ethernet) 60 Bytes für jedes Paket und 500 Bytes für jede Verbindung hinzu. Der beste Mehraufwand, der für das Streaming über Ethernet zu erwarten ist, beträgt etwa 6 %. Bei einer Modemverbindung beträgt der beste Mehraufwand etwa 2 %, da ein DSL-Link die Headerkomprimierung verwendet. Weitere Informationen finden Sie unter Berechnen des Mehraufwands mit Netstat.
Die Anwendungsantwort verlangsamt sich, wenn die Verbindung über eine große RTT verfügt.
Vorausgesetzt, die Anwendung nähert sich nicht der Bandbreite des Links, sollte eine große RTT nur geringe oder gar keine Auswirkungen haben. Eine drastische Verlangsamung mit einer großen RTT ist ein klares Zeichen für die serialisierte Verarbeitung und viele kleine Transaktionen.
Jede Anwendung sollte in einer Umgebung mit einer großen RTT getestet werden. Dies macht die meisten Anwendungen deutlich, die unter schlechten Entwicklungsoptionen zu verzeichnen sind. Diese Tests können in mehreren Umgebungen durchgeführt werden, einschließlich eines WLAN-Netzwerks, eines Linkverzögerungssimulators oder eines Satellitennetzwerks.