- 01/19/2021
- 5 minutter at læse
-
- l
- H
- e
- D
- i
-
+2
gælder for: Vinduer Server 2019, vinduer 10
et af de sværeste problemer at diagnosticere er dårlig applikationsydelse—applikationerne kører langsomt eller reagerer ikke. Traditionelt starter du din diagnose ved at indsamle CPU, hukommelse, diskindgang/ – udgang og andre målinger og derefter bruge værktøjer som f.eks. Desværre hjælper disse data i de fleste situationer dig ikke med at identificere årsagen, fordi ressourceforbrugstællere har hyppige og store variationer. Dette gør det svært at læse dataene og korrelere dem med det rapporterede problem.
Bemærk
brugerinputforsinkelsestælleren er kun kompatibel med:
- vinduer Server 2019 eller nyere
- vinduer 10, version 1809 eller nyere
brugerinputforsinkelsestælleren kan hjælpe dig med hurtigt at identificere årsagen til dårlige slutbruger-RDP-oplevelser. Denne tæller måler, hvor længe en brugerinput (såsom brug af mus eller tastatur) forbliver i køen, før den hentes af en proces, og tælleren fungerer i både lokale og eksterne sessioner.
følgende billede viser en grov repræsentation af brugerinputstrømmen fra klient til applikation.
brugerinputforsinkelsestælleren måler det maksimale delta (inden for et tidsinterval) mellem indgangen, der står i kø, og når den hentes af appen i en traditionel meddelelsessløjfe, som vist i følgende rutediagram:
en vigtig detalje ved denne tæller er, at den rapporterer den maksimale brugerinputforsinkelse inden for et konfigurerbart interval. Dette er den længste tid, det tager for et input at nå applikationen, hvilket kan påvirke hastigheden af vigtige og synlige handlinger som at skrive.
for eksempel i den følgende tabel vil brugerinputforsinkelsen blive rapporteret som 1.000 ms inden for dette interval. Tælleren rapporterer den langsomste brugerinputforsinkelse i intervallet, fordi brugerens opfattelse af “langsom” bestemmes af den langsomste inputtid (det maksimale), de oplever, ikke gennemsnitshastigheden for alle samlede input.
nummer | 0 | 1 | 2 |
---|---|---|---|
forsinkelse | 16 ms | 20 ms | 1.000 ms |
aktiver og brug de nye ydelsestællere
for at bruge disse nye ydelsestællere skal du først aktivere en registreringsdatabasenøgle ved at køre denne kommando:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f
Bemærk
hvis du bruger vinduer 10, version 1809 eller nyere eller vinduer Server 2019 eller nyere, behøver du ikke aktivere registreringsnøglen.
genstart derefter serveren. Åbn derefter Performance Monitor, og vælg plustegnet ( + ), som vist i det følgende skærmbillede.
efter at have gjort det, skal du se dialogboksen Tilføj tællere, hvor du kan vælge Brugerinputforsinkelse pr.proces eller Brugerinputforsinkelse pr. Session.
hvis du vælger Brugerinputforsinkelse pr. proces, vil du se forekomsterne af det valgte objekt (med andre ord processerne) i SessionID:ProcessID <Process Image>
format.
hvis f.eks. Calculator-appen kører i et sessions-ID 1, får du vist 1:4232 <Calculator.exe>
.
Bemærk
ikke alle processer er inkluderet. Du vil ikke se nogen processer, der kører som SYSTEM.
tælleren begynder at rapportere brugerinputforsinkelse, så snart du tilføjer den. Bemærk, at den maksimale skala er indstillet til 100 (ms) som standard.
næste, lad os se på Brugerinputforsinkelsen pr. Session. Der er forekomster for hvert sessions-ID, og deres tællere viser brugerinputforsinkelsen for enhver proces inden for den angivne session. Derudover er der to tilfælde kaldet ” maks “(den maksimale brugerinputforsinkelse på tværs af alle sessioner) og” gennemsnit ” (Den gennemsnitlige acorss alle sessioner).
denne tabel viser et visuelt eksempel på disse tilfælde. (Du kan få de samme oplysninger i Perfmon ved at skifte til Rapportgraftypen.)
type tæller | Instansnavn | rapporteret forsinkelse (ms) |
---|---|---|
Brugerinputforsinkelse pr. proces | 1:4232 <Lommeregner.eks> | 200 |
Brugerinputforsinkelse pr. proces | 2:1000 <Lommeregner.eks> | 16 |
Brugerinputforsinkelse pr. proces | 1:2000 <Lommeregner.eks> | 32 |
Brugerinputforsinkelse pr. session | 1 | 200 |
Brugerinputforsinkelse pr. session | 2 | 16 |
Brugerinputforsinkelse pr. session | gennemsnit | 108 |
Brugerinputforsinkelse pr. session | maks | 200 |
tællere, der bruges i et overbelastet system
lad os nu se på, hvad du vil se i rapporten, hvis ydeevnen for en app forringes. Følgende graf viser aflæsninger for brugere, der arbejder eksternt i Microsoft-ord. I dette tilfælde forringes rdsh-serverens ydeevne over tid, da flere brugere logger ind.
Sådan læses grafens linjer:
- den lyserøde linje viser antallet af sessioner, der er logget ind på serveren.
- den røde linje er CPU-brugen.
- den grønne linje er den maksimale brugerinputforsinkelse på tværs af alle sessioner.
- den blå linje (vises som sort i denne graf) repræsenterer gennemsnitlig brugerinputforsinkelse på tværs af alle sessioner.
du vil bemærke, at der er en sammenhæng mellem CPU—pigge og brugerinputforsinkelse-da CPU ‘ en får mere brug, øges brugerinputforsinkelsen. Efterhånden som flere brugere bliver tilføjet til systemet, kommer CPU-brugen tættere på 100%, hvilket fører til hyppigere brugerinputforsinkelsesspidser. Selvom denne tæller er meget nyttig i tilfælde, hvor serveren løber tør for ressourcer, kan du også bruge den til at spore brugerinputforsinkelse relateret til en bestemt applikation.
konfigurationsindstillinger
en vigtig ting at huske, når du bruger denne ydelsestæller, er, at den rapporterer brugerinputforsinkelse i et interval på 1.000 ms som standard. Hvis du indstiller egenskaben performance counter sample interval (som vist i det følgende skærmbillede) til noget andet, vil den rapporterede værdi være forkert.
for at løse dette kan du indstille følgende registreringsdatabasenøgle til at matche det interval (i millisekunder), du vil bruge. For eksempel, hvis vi skifter prøve hvert sekund til 5 sekunder, skal vi indstille denne nøgle til 5000 ms.
"LagCounterInterval"=dword:00005000
Bemærk
hvis du bruger vinduer 10, version 1809 eller nyere eller vinduer Server 2019 eller nyere, behøver du ikke at indstille LagCounterInterval for at rette ydelsestælleren.
vi har også tilføjet et par nøgler, som du måske finder nyttige under den samme registreringsnøgle:
Lagcounterimagenameførst — Indstil denne nøgle til DWORD 1
(standardværdi 0 eller nøgle findes ikke). Dette ændrer tællernavnene til ” Billednavn SessionID:ProcessId.”For eksempel” opdagelsesrejsende <1:7964>.”Dette er nyttigt, hvis du vil sortere efter billednavn.
Lagcountervisukendt — Indstil denne nøgle til DWORD 1
(standardværdi 0 eller nøgle findes ikke). Dette viser alle processer, der kører som tjenester eller SYSTEM. Nogle processer vises med deres session indstillet som “?.”
Sådan ser det ud, hvis du tænder begge taster:
brug af de nye tællere med ikke-Microsoft-værktøjer
overvågningsværktøjer kan forbruge denne tæller ved hjælp af ydelsestællere.
Del din feedback
du kan indsende feedback til denne funktion via Feedback Hub. Vælg Apps > alle andre apps, og inkluder “RDS performance counters-performance monitor” i dit indlægs Titel.