- 01/19/2021
- 5 minuten zum Lesen
-
- l
- H
- e
- T
- ich
-
+2
Gilt für: Microsoft Windows Server 2019 10
Eines der am schwierigsten zu diagnostizierenden Probleme ist die schlechte Anwendungsleistung — die Anwendungen werden langsam ausgeführt oder reagieren nicht. Traditionell starten Sie Ihre Diagnose, indem Sie CPU, Arbeitsspeicher, Datenträgereingabe / -ausgabe und andere Metriken erfassen und dann Tools wie Windows Performance Analyzer verwenden, um herauszufinden, was das Problem verursacht. Leider helfen Ihnen diese Daten in den meisten Situationen nicht, die Ursache zu identifizieren, da die Ressourcenverbrauchszähler häufig und stark variieren. Dies macht es schwierig, die Daten zu lesen und mit dem gemeldeten Problem zu korrelieren.
Hinweis
Der User Input Delay Counter ist nur kompatibel mit:
- Windows Server 2019 oder höher
- Windows 10, Version 1809 oder höher
Der Verzögerungszähler für Benutzereingaben kann Ihnen helfen, die Ursache für schlechte RDP-Erfahrungen von Endbenutzern schnell zu identifizieren. Dieser Zähler misst, wie lange Benutzereingaben (z. B. Maus- oder Tastaturverwendung) in der Warteschlange verbleiben, bevor sie von einem Prozess erfasst werden.
Das folgende Bild zeigt eine grobe Darstellung des Benutzereingabeflusses vom Client zur Anwendung.
Der Verzögerungszähler für Benutzereingaben misst das maximale Delta (innerhalb eines Zeitintervalls) zwischen der Eingabe in die Warteschlange und dem Zeitpunkt, zu dem sie von der App in einer herkömmlichen Nachrichtenschleife empfangen wird, wie im folgenden Flussdiagramm dargestellt:
Ein wichtiges Detail dieses Zählers ist, dass er die maximale Verzögerung der Benutzereingabe innerhalb eines konfigurierbaren Intervalls meldet. Dies ist die längste Zeit, die eine Eingabe benötigt, um die Anwendung zu erreichen, was sich auf die Geschwindigkeit wichtiger und sichtbarer Aktionen wie Tippen auswirken kann.
In der folgenden Tabelle wird die Verzögerung der Benutzereingabe beispielsweise als 1.000 ms innerhalb dieses Intervalls angegeben. Der Zähler meldet die langsamste Benutzereingabeverzögerung im Intervall, da die Wahrnehmung des Benutzers von „langsam“ durch die langsamste Eingabezeit (das Maximum) bestimmt wird, die er erfährt, und nicht durch die Durchschnittsgeschwindigkeit aller Gesamteingaben.
Anzahl | 0 | 1 | 2 |
---|---|---|---|
Verzögerung | 16 ms | 20 ms | 1.000 ms |
Aktivieren und Verwenden der neuen Leistungsindikatoren
Um diese neuen Leistungsindikatoren zu verwenden, müssen Sie zuerst einen Registrierungsschlüssel aktivieren, indem Sie diesen Befehl ausführen:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f
Hinweis
Wenn Sie Windows 10, Version 1809 oder höher oder Windows Server 2019 oder höher verwenden, müssen Sie den Registrierungsschlüssel nicht aktivieren.
Starten Sie als Nächstes den Server neu. Öffnen Sie dann den Leistungsmonitor und wählen Sie das Pluszeichen (+) aus, wie im folgenden Screenshot gezeigt.
Danach sollten Sie das Dialogfeld Zähler hinzufügen sehen, in dem Sie die Benutzereingabeverzögerung pro Prozess oder die Benutzereingabeverzögerung pro Sitzung auswählen können.
Wenn Sie Benutzereingabeverzögerung pro Prozess auswählen, werden die Instanzen des ausgewählten Objekts (dh die Prozesse) im Format SessionID:ProcessID <Process Image>
angezeigt.
Wenn die Taschenrechner-App beispielsweise in einer Sitzungs-ID 1 ausgeführt wird, wird 1:4232 <Calculator.exe>
angezeigt.
Hinweis
Nicht alle Prozesse sind enthalten. Sie werden keine Prozesse sehen, die als SYSTEM ausgeführt werden.
Der Zähler meldet die Verzögerung der Benutzereingabe, sobald Sie sie hinzufügen. Beachten Sie, dass die maximale Skalierung standardmäßig auf 100 (ms) eingestellt ist.
Als nächstes sehen wir uns die Verzögerung der Benutzereingabe pro Sitzung an. Es gibt Instanzen für jede Sitzungs-ID, und ihre Zähler zeigen die Benutzereingabeverzögerung eines Prozesses innerhalb der angegebenen Sitzung an. Darüber hinaus gibt es zwei Instanzen namens „Max“ (die maximale Benutzereingabeverzögerung für alle Sitzungen) und „Average“ (die durchschnittliche Acor für alle Sitzungen).
Diese Tabelle zeigt ein visuelles Beispiel dieser Instanzen. (Sie können die gleichen Informationen in Perfmon erhalten, indem Sie zum Berichtsdiagrammtyp wechseln.)
Art des Zählers | Instanzname | Gemeldete Verzögerung (ms) |
---|---|---|
Verzögerung der Benutzereingabe pro Prozess | 1:4232 < Rechner.exe> | 200 |
Verzögerung der Benutzereingabe pro Prozess | 2:1000 < Rechner.exe> | 16 |
Verzögerung der Benutzereingabe pro Prozess | 1:2000 < Rechner.exe> | 32 |
Verzögerung der Benutzereingabe pro Sitzung | 1 | 200 |
Verzögerung der Benutzereingabe pro Sitzung | 2 | 16 |
Verzögerung der Benutzereingabe pro Sitzung | Durchschnitt | 108 |
Verzögerung der Benutzereingabe pro Sitzung | Max | 200 |
In einem überlasteten System verwendete Zähler
Schauen wir uns nun an, was im Bericht angezeigt wird, wenn die Leistung einer App beeinträchtigt ist. Die folgende Grafik zeigt Messwerte für Benutzer, die remote in Microsoft Word arbeiten. In diesem Fall verschlechtert sich die Leistung des RDSH-Servers im Laufe der Zeit, wenn sich mehr Benutzer anmelden.
So lesen Sie die Zeilen des Diagramms:
- Die rosa Linie zeigt die Anzahl der auf dem Server angemeldeten Sitzungen an.
- Die rote Linie ist die CPU-Auslastung.
- Die grüne Linie ist die maximale Verzögerung der Benutzereingabe über alle Sitzungen hinweg.
- Die blaue Linie (in diesem Diagramm schwarz dargestellt) stellt die durchschnittliche Verzögerung der Benutzereingabe über alle Sitzungen hinweg dar.
Sie werden feststellen, dass es eine Korrelation zwischen CPU—Spitzen und Benutzereingabeverzögerung gibt. Wenn mehr Benutzer zum System hinzugefügt werden, nähert sich die CPU-Auslastung 100%, was zu häufigeren Verzögerungsspitzen bei der Benutzereingabe führt. Dieser Zähler ist zwar sehr nützlich, wenn dem Server die Ressourcen ausgehen, Sie können ihn jedoch auch verwenden, um die Verzögerung der Benutzereingabe in Bezug auf eine bestimmte Anwendung zu verfolgen.
Konfigurationsoptionen
Bei der Verwendung dieses Leistungsindikators ist zu beachten, dass standardmäßig eine Verzögerung der Benutzereingabe in einem Intervall von 1.000 ms gemeldet wird. Wenn Sie die Eigenschaft Beispielintervall des Leistungsindikators (wie im folgenden Screenshot gezeigt) auf einen anderen Wert festlegen, ist der gemeldete Wert falsch.
Um dies zu beheben, können Sie den folgenden Registrierungsschlüssel so einstellen, dass er dem Intervall (in Millisekunden) entspricht, das Sie verwenden möchten. Wenn wir beispielsweise die Abtastung alle x Sekunden auf 5 Sekunden ändern, müssen wir diesen Schlüssel auf 5000 ms setzen.
"LagCounterInterval"=dword:00005000
Hinweis
Wenn Sie Windows 10, Version 1809 oder höher oder Windows Server 2019 oder höher verwenden, müssen Sie LagCounterInterval nicht festlegen, um den Leistungsindikator zu beheben.
Wir haben auch ein paar Schlüssel hinzugefügt, die Sie unter demselben Registrierungsschlüssel hilfreich finden könnten:
LagCounterImageNameFirst — Setzen Sie diesen Schlüssel auf DWORD 1
(Standardwert 0 oder Schlüssel existiert nicht). Dadurch werden die Zählernamen in „Bildname SessionID: ProcessID“ geändert.“ Zum Beispiel „Explorer <1:7964>.“ Dies ist nützlich, wenn Sie nach Bildnamen sortieren möchten.
LagCounterShowUnknown – Setzen Sie diesen Schlüssel auf DWORD 1
(Standardwert 0 oder Schlüssel ist nicht vorhanden). Dies zeigt alle Prozesse, die als Dienste oder SYSTEM ausgeführt werden. Einige Prozesse werden mit ihrer Sitzung als „?.“
So sieht es aus, wenn Sie beide Tasten einschalten:
Verwenden der neuen Zähler mit Nicht-Microsoft-Tools
Überwachungstools können diesen Zähler mithilfe von Leistungsindikatoren verbrauchen.
Teilen Sie Ihr Feedback
Sie können Feedback für diese Funktion über den Feedback Hub senden. Wählen Sie Apps > Alle anderen Apps aus und fügen Sie „RDS—Leistungsindikatoren- Leistungsmonitor“ in den Titel Ihres Beitrags ein.