- 01/19/2021
- 5 minuti a leggere
-
- l
- H
- e
- D
- i
-
+2
si Applica a: Finestre Server 2019, Finestre 10
Uno dei problemi più difficili da diagnosticare è la scarsa performance delle applicazioni: le applicazioni funzionano lentamente o non rispondono. Tradizionalmente, si avvia la diagnosi raccogliendo CPU, memoria, input/output del disco e altre metriche e quindi utilizzare strumenti come Windows Performance Analyzer per cercare di capire cosa sta causando il problema. Sfortunatamente, nella maggior parte delle situazioni questi dati non aiutano a identificare la causa principale perché i contatori del consumo di risorse hanno variazioni frequenti e grandi. Ciò rende difficile leggere i dati e correlarli con il problema segnalato.
Nota
L’Utente di Ritardo di Ingresso contatore è compatibile solo con:
- Windows Server 2019 o versione successiva
- Windows 10, la versione 1809 o poi
L’Utente di Ritardo di Ingresso contatore può aiutare a identificare rapidamente la causa principale della cattiva utente finale RDP esperienze. Questo contatore misura per quanto tempo qualsiasi input dell’utente (come l’utilizzo del mouse o della tastiera) rimane nella coda prima che venga raccolto da un processo e il contatore funziona sia in sessioni locali che remote.
L’immagine seguente mostra una rappresentazione approssimativa del flusso di input dell’utente dal client all’applicazione.
Il contatore del ritardo dell’input dell’utente misura il delta massimo (entro un intervallo di tempo) tra l’input in coda e quando viene raccolto dall’app in un ciclo di messaggi tradizionale, come mostrato nel seguente diagramma di flusso:
Un dettaglio importante di questo contatore è che riporta il ritardo massimo dell’input dell’utente entro un intervallo configurabile. Questo è il tempo più lungo necessario per un input per raggiungere l’applicazione, che può influire sulla velocità di azioni importanti e visibili come la digitazione.
Ad esempio, nella tabella seguente, il ritardo di input dell’utente verrà segnalato come 1.000 ms all’interno di questo intervallo. Il contatore segnala il ritardo di input dell’utente più lento nell’intervallo perché la percezione dell’utente di “lento” è determinata dal tempo di input più lento (il massimo) che sperimentano, non dalla velocità media di tutti gli input totali.
Numero | 0 | 1 | 2 |
---|---|---|---|
Ritardo | 16 ms | 20 ms | 1.000 ms |
Attivare ed utilizzare i nuovi contatori delle prestazioni
Per utilizzare questi nuovi contatori delle prestazioni, è necessario prima attivare una chiave del registro di sistema, eseguire questo comando:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f
Nota
Se si utilizza Windows 10, versione 1809 o successiva o Windows Server 2019 o successiva, non sarà necessario abilitare la chiave di registro.
Quindi, riavviare il server. Quindi, aprire il Performance Monitor e selezionare il segno più ( + ), come mostrato nella schermata seguente.
Dopo averlo fatto, dovresti vedere la finestra di dialogo Aggiungi contatori, dove puoi selezionare il ritardo di input dell’utente per processo o il ritardo di input dell’utente per sessione.
Se si seleziona l’Utente di Ritardo in Ingresso al Processo, è possibile vedere le Istanze dell’oggetto selezionato (in altre parole, i processi) in SessionID:ProcessID <Process Image>
formato.
Ad esempio, se l’app Calcolatrice è in esecuzione in un ID di sessione 1, vedrai 1:4232 <Calculator.exe>
.
Nota
Non tutti i processi sono inclusi. Non vedrai alcun processo in esecuzione come SISTEMA.
Il contatore inizia a segnalare il ritardo di input dell’utente non appena lo si aggiunge. Si noti che la scala massima è impostata su 100 (ms) per impostazione predefinita.
Quindi, diamo un’occhiata al ritardo di input dell’utente per sessione. Esistono istanze per ogni ID di sessione e i relativi contatori mostrano il ritardo di input dell’utente di qualsiasi processo all’interno della sessione specificata. Inoltre, ci sono due istanze chiamate “Max” (il ritardo massimo di input dell’utente in tutte le sessioni) e “Average” (l’acorss medio tutte le sessioni).
Questa tabella mostra un esempio visivo di queste istanze. (È possibile ottenere le stesse informazioni in Perfmon passando al tipo di grafico del report.)
Tipo di contatore | Nome istanza | Ritardo segnalato (ms) |
---|---|---|
Ritardo di input dell’utente per processo | 1:4232 <Calcolatrice.exe> | 200 |
Ritardo di input dell’utente per processo | 2:1000 <Calcolatrice.exe> | 16 |
Ritardo di input dell’utente per processo | 1:2000 <Calcolatrice.exe> | 32 |
Utente di Ritardo di Ingresso per ogni sessione | 1 | 200 |
Utente di Ritardo di Ingresso per ogni sessione | 2 | 16 |
Utente di Ritardo di Ingresso per ogni sessione | Media | 108 |
Utente di Ritardo di Ingresso per ogni sessione | Max | 200 |
i Contatori utilizzati in un sistema sovraccarico
Ora diamo un’occhiata a quello che vedrete nel report se le prestazioni di un’applicazione è degradata. Il grafico seguente mostra le letture per gli utenti che lavorano in remoto in Microsoft Word. In questo caso, le prestazioni del server RDSH si degradano nel tempo man mano che più utenti accedono.
Ecco come leggere le linee del grafico:
- La riga rosa mostra il numero di sessioni eseguite sul server.
- La linea rossa è l’utilizzo della CPU.
- La linea verde è il ritardo massimo di input dell’utente in tutte le sessioni.
- La linea blu (visualizzata come nera in questo grafico) rappresenta il ritardo medio di input dell’utente in tutte le sessioni.
Noterai che esiste una correlazione tra i picchi della CPU e il ritardo di input dell’utente: man mano che la CPU aumenta l’utilizzo, il ritardo di input dell’utente aumenta. Inoltre, man mano che più utenti vengono aggiunti al sistema, l’utilizzo della CPU si avvicina al 100%, portando a picchi di ritardo dell’input dell’utente più frequenti. Sebbene questo contatore sia molto utile nei casi in cui il server esaurisce le risorse, è anche possibile utilizzarlo per tenere traccia del ritardo di input dell’utente relativo a un’applicazione specifica.
Opzioni di configurazione
Una cosa importante da ricordare quando si utilizza questo contatore delle prestazioni è che riporta il ritardo di input dell’utente su un intervallo di 1.000 ms per impostazione predefinita. Se si imposta la proprietà intervallo di campionamento del contatore delle prestazioni (come mostrato nella schermata seguente) su qualcosa di diverso, il valore riportato non sarà corretto.
Per risolvere il problema, è possibile impostare la seguente chiave di registro in modo che corrisponda all’intervallo (in millisecondi) che si desidera utilizzare. Ad esempio, se cambiamo il campione ogni x secondi a 5 secondi, dobbiamo impostare questa chiave su 5000 ms.
"LagCounterInterval"=dword:00005000
Nota
Se si utilizza Windows 10, versione 1809 o successiva o Windows Server 2019 o successiva, non è necessario impostare LagCounterInterval per correggere il contatore delle prestazioni.
Abbiamo anche aggiunto un paio di chiavi che potresti trovare utili sotto la stessa chiave di registro:
LagCounterImageNameFirst — imposta questa chiave su DWORD 1
(il valore predefinito 0 o la chiave non esiste). Questo cambia i nomi dei contatori in ” Nome immagine SessionID: ProcessId.”Ad esempio,” explorer <1:7964>.”Questo è utile se si desidera ordinare per nome dell’immagine.
LagCounterShowUnknown-imposta questa chiave su DWORD 1
(il valore predefinito 0 o la chiave non esiste). Questo mostra tutti i processi che sono in esecuzione come servizi o sistema. Alcuni processi verranno visualizzati con la loro sessione impostata come”?.”
Questo è come appare se accendi entrambi i tasti:
Utilizzando i nuovi contatori con strumenti non Microsoft
Gli strumenti di monitoraggio possono utilizzare questo contatore utilizzando i contatori delle prestazioni.
Condividi il tuo feedback
È possibile inviare feedback per questa funzione tramite l’Hub di feedback. Seleziona App > Tutte le altre app e includi “RDS performance counters-performance monitor” nel titolo del tuo post.