Verwenden von Leistungsindikatoren zur Diagnose von App-Leistungsproblemen auf Remotedesktopsitzungshosts

  • 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.

Remotedesktop - Benutzereingaben fließen vom Remotedesktopclient des Benutzers 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:

Leistungszähler für Remotedesktop - Verzögerung der Benutzereingabe:

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.

Remote Desktop - Ein Screenshot, der zeigt, wie der Leistungszähler für die Benutzereingabeverzögerung hinzugefügt wird

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.

Remote Desktop - Ein Screenshot, der zeigt, wie die Benutzereingabeverzögerung pro Sitzung hinzugefügt wird

 Remotedesktop - Ein Screenshot, der zeigt, wie die Benutzereingabeverzögerung pro Prozess hinzugefügt wird

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.

Remotedesktop - Ein Beispiel für die Aktivität für die Verzögerung der Benutzereingabe pro Prozess im Leistungsmonitor

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.

Remotedesktop - Ein Beispielleistungsdiagramm für den RDSH-Server mit Microsoft Word

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.

Remotedesktop - Die Eigenschaften für Ihren Leistungsmonitor

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:

Remotedesktop - Der Leistungsmonitor mit beiden Tasten auf

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.

You might also like

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.