użyj liczników wydajności do diagnozowania problemów z wydajnością aplikacji na hostach sesji pulpitu zdalnego

  • 01/19/2021
  • 5 protokół do czytania
    • l
    • H
    • e
    • D
    • i
    • +2

dotyczy: Windows Server 2019, Windows 10

jednym z najtrudniejszych problemów do zdiagnozowania jest słaba wydajność aplikacji—aplikacje działają wolno lub nie reagują. Tradycyjnie diagnozę rozpoczynasz od zebrania procesora, pamięci, wejścia/wyjścia dysku i innych wskaźników, a następnie używasz narzędzi takich jak Windows Performance Analyzer, aby dowiedzieć się, co jest przyczyną problemu. Niestety w większości sytuacji Dane te nie pomagają zidentyfikować przyczyny źródłowej, ponieważ liczniki zużycia zasobów mają częste i duże wahania. Utrudnia to odczytanie danych i skorelowanie ich ze zgłoszonym problemem.

Uwaga

Licznik opóźnienia wejścia użytkownika jest kompatybilny tylko z:

  • Windows Server 2019 lub nowszy
  • Windows 10, wersja 1809 lub nowsza

licznik opóźnienia wejścia użytkownika może pomóc szybko zidentyfikować przyczynę złych doświadczeń użytkownika końcowego RDP. Licznik ten mierzy, jak długo Dane wejściowe użytkownika (takie jak użycie myszy lub klawiatury) pozostają w kolejce, zanim zostaną odebrane przez proces, a licznik działa zarówno w sesjach lokalnych, jak i zdalnych.

poniższy obraz przedstawia przybliżoną reprezentację przepływu danych wejściowych użytkownika od klienta do aplikacji.

Pulpit zdalny - przepływ danych wejściowych użytkownika z klienta pulpitu zdalnego użytkowników do aplikacji

Licznik opóźnienia wejścia użytkownika mierzy maksymalną wartość delta (w odstępie czasu) między kolejkowaniem wejścia a jego odebraniem przez aplikację w tradycyjnej pętli komunikatów, jak pokazano na poniższym schemacie blokowym:

Pulpit zdalny - Opóźnienie wejścia użytkownika wydajność licznik przepływu

jednym z ważnych szczegółów tego licznika jest to, że raportuje maksymalne opóźnienie wejścia użytkownika w konfigurowalnym interwale. Jest to najdłuższy czas potrzebny na wejście do aplikacji, co może wpłynąć na szybkość ważnych i widocznych działań, takich jak pisanie.

na przykład w poniższej tabeli opóźnienie wejścia użytkownika zostanie zgłoszone jako 1000 ms w tym przedziale. Licznik zgłasza najwolniejsze opóźnienie wejścia użytkownika w interwale, ponieważ postrzeganie przez użytkownika „wolnego” zależy od najwolniejszego czasu wejścia (maksymalnego), którego doświadcza, a nie średniej prędkości wszystkich łącznych wejść.

Liczba 0 1 2
opóźnienie 16 ms 20 ms 1000 ms

Włączanie i używanie nowych liczników wydajności

aby korzystać z tych nowych liczników wydajności, należy najpierw włączyć klucz rejestru, uruchamiając to polecenie:

reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f

Uwaga

jeśli używasz systemu Windows 10, wersji 1809 lub nowszej lub systemu Windows Server 2019 lub nowszego, nie musisz włączać klucza rejestru.

następnie uruchom ponownie serwer. Następnie otwórz monitor wydajności i wybierz znak plus (+), jak pokazano na poniższym zrzucie ekranu.

Pulpit zdalny - zrzut ekranu pokazujący, jak dodać licznik wydajności opóźnienia wejścia użytkownika

po wykonaniu tej czynności powinieneś zobaczyć okno dialogowe Dodaj liczniki, w którym możesz wybrać opóźnienie wejścia użytkownika na proces lub opóźnienie wejścia użytkownika na sesję.

 Pulpit zdalny-zrzut ekranu pokazujący jak dodać Opóźnienie wejścia użytkownika na sesję

Pulpit zdalny-zrzut ekranu pokazujący, jak dodać Opóźnienie wejścia użytkownika dla procesu

jeśli wybierzesz Opóźnienie wejścia użytkownika dla procesu, zobaczysz instancje wybranego obiektu (innymi słowy procesy) w formacie SessionID:ProcessID <Process Image>.

na przykład, jeśli aplikacja Kalkulator działa w sesji o ID 1, zobaczysz 1:4232 <Calculator.exe>.

Uwaga

nie wszystkie procesy są uwzględnione. Nie zobaczysz żadnych procesów, które są uruchomione jako SYSTEM.

licznik rozpoczyna raportowanie opóźnienia wejścia użytkownika, gdy tylko go dodasz. Należy zauważyć, że maksymalna skala jest domyślnie ustawiona na 100 (ms).

Pulpit zdalny - przykład aktywności dla opóźnienia wejścia użytkownika na proces w Monitorze wydajności

następnie spójrzmy na opóźnienie wejścia użytkownika na sesję. Istnieją instancje dla każdego identyfikatora sesji, a ich liczniki pokazują opóźnienie wejścia użytkownika dowolnego procesu w określonej sesji. Ponadto istnieją dwie instancje o nazwie „Max” (maksymalne opóźnienie wprowadzania danych przez użytkownika we wszystkich sesjach) i „Average” (średnie opóźnienie wszystkich sesji).

ta tabela pokazuje wizualny przykład tych instancji. (Te same informacje można uzyskać w Perfmon, przełączając się na typ wykresu raportu.)

typ licznika nazwa instancji zgłoszone opóźnienie (ms)
Opóźnienie wejścia użytkownika na proces 1:4232 <Kalkulator.exe> 200
Opóźnienie wejścia użytkownika na proces 2:1000 <Kalkulator.exe> 16
Opóźnienie wejścia użytkownika na proces 1:2000 <Kalkulator.exe> 32
Opóźnienie wejścia użytkownika na sesję 1 200
Opóźnienie wejścia użytkownika na sesję 2 16
Opóźnienie wejścia użytkownika na sesję średnie 108
Opóźnienie wejścia użytkownika na sesję Maks 200

liczniki używane w przeciążonym systemie

teraz spójrzmy na to, co zobaczysz w raporcie, jeśli wydajność aplikacji zostanie obniżona. Poniższy wykres przedstawia odczyty dla użytkowników pracujących zdalnie w programie Microsoft Word. W takim przypadku wydajność serwera RDSH zmniejsza się z czasem, gdy loguje się więcej użytkowników.

 zdalny pulpit-przykładowy wykres wydajności serwera Rdsh z programem Microsoft Word

oto jak odczytać linie wykresu:

  • różowa linia pokazuje liczbę sesji zalogowanych na serwerze.
  • czerwona linia to użycie procesora.
  • zielona linia to maksymalne opóźnienie wejścia użytkownika we wszystkich sesjach.
  • Niebieska linia (wyświetlana jako czarna na tym wykresie) reprezentuje średnie opóźnienie wejścia użytkownika we wszystkich sesjach.

zauważysz, że istnieje korelacja między skokami procesora a opóźnieniem wejścia użytkownika—w miarę zwiększania zużycia procesora, opóźnienie wejścia użytkownika wzrasta. Ponadto, w miarę dodawania większej liczby użytkowników do systemu, zużycie procesora zbliża się do 100%, co prowadzi do częstszych skoków opóźnienia wprowadzania danych przez użytkownika. Chociaż licznik ten jest bardzo przydatny w przypadkach, gdy serwerowi kończą się zasoby, możesz go również użyć do śledzenia opóźnienia wprowadzania danych użytkownika związanego z konkretną aplikacją.

opcje konfiguracyjne

ważną rzeczą do zapamiętania podczas korzystania z tego licznika wydajności jest to, że domyślnie zgłasza opóźnienie wejścia użytkownika w przedziale 1000 ms. Jeśli ustawisz właściwość performance counter sample interval (jak pokazano na poniższym zrzucie ekranu) na coś innego, zgłoszona wartość będzie nieprawidłowa.

Pulpit zdalny - właściwości Monitora wydajności

aby to naprawić, możesz ustawić następujący klucz rejestru, aby pasował do interwału (w milisekundach), którego chcesz użyć. Na przykład, jeśli zmienimy próbkę co x sekund na 5 sekund, musimy ustawić ten klucz na 5000 ms.

"LagCounterInterval"=dword:00005000

Uwaga

jeśli używasz systemu Windows 10, wersji 1809 lub nowszej lub Windows Server 2019 lub nowszej, nie musisz ustawiać LagCounterInterval, aby naprawić licznik wydajności.

dodaliśmy również kilka kluczy, które mogą okazać się pomocne pod tym samym kluczem rejestru:

LagCounterImageNameFirst — Ustaw ten klucz na DWORD 1 (domyślna wartość 0 lub klucz nie istnieje). Spowoduje to zmianę nazw liczników na ” Image Name SessionID: ProcessId.”Na przykład” odkrywca <1:7964>.”Jest to przydatne, jeśli chcesz sortować według nazwy obrazu.

LagCounterShowUnknown-Ustaw ten klucz na DWORD 1(domyślna wartość 0 lub klucz nie istnieje). To pokazuje wszystkie procesy, które są uruchomione jako usługi lub SYSTEM. Niektóre procesy pojawią się z ich sesją ustawioną jako”?.”

tak to wygląda po włączeniu obu klawiszy:

Pulpit Zdalny - Monitor wydajności z dwoma kluczami na

Korzystanie z nowych liczników z narzędziami innych niż Microsoft

narzędzia monitorujące mogą zużywać ten licznik za pomocą liczników wydajności.

podziel się swoją opinią

możesz przesłać opinię o tej funkcji za pośrednictwem Centrum opinii. Wybierz Aplikacje > wszystkie inne aplikacje i dodaj „liczniki wydajności RDS-Monitor wydajności” w tytule postu.

You might also like

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.