Menggunakan penghitung kinerja untuk mendiagnosis masalah performa aplikasi pada Host Sesi Desktop Jarak Jauh
Berlaku untuk: Windows Server 2022, Windows Server 2019, Windows 10
Salah satu masalah yang paling sulit untuk didiagnosis adalah performa aplikasi yang buruk—aplikasi berjalan lambat atau tidak merespons. Secara tradisional, Anda memulai diagnosis dengan mengumpulkan CPU, memori, input/output disk, dan metrik lainnya dan kemudian menggunakan alat seperti Windows Penganalisis Kinerja untuk mencoba mencari tahu apa yang menyebabkan masalah. Sayangnya, dalam kebanyakan situasi, data ini tidak membantu Anda mengidentifikasi akar penyebab karena penghitung konsumsi sumber daya memiliki variasi yang sering dan besar. Ini membuatnya sulit untuk membaca data dan menghubungkannya dengan masalah yang dilaporkan.
Catatan
Penghitung Penundaan Input Pengguna hanya kompatibel dengan:
- Windows Server 2019 atau yang lebih baru
- Windows 10, versi 1809 atau yang lebih baru
Penghitung Penundaan Input Pengguna dapat membantu Anda dengan cepat mengidentifikasi akar penyebab pengalaman RDP pengguna akhir yang buruk. Penghitung ini mengukur berapa lama setiap input pengguna (seperti penggunaan mouse atau keyboard) tetap berada dalam antrean sebelum diambil oleh suatu proses, dan penghitung bekerja di sesi lokal dan jarak jauh.
Gambar berikut menunjukkan representasi kasar alur input pengguna dari klien ke aplikasi.

Penghitung Penundaan Input Pengguna mengukur delta maks (dalam interval waktu) antara input yang diantrekan dan saat diambil oleh aplikasi dalam perulangan pesan tradisional, seperti yang ditunjukkan dalam bagan alur berikut:

Satu detail penting dari penghitung ini adalah penghitung melaporkan penundaan input pengguna maksimum dalam interval yang dapat dikonfigurasi. Ini adalah waktu terlama yang diperlukan input untuk mencapai aplikasi, yang dapat memengaruhi kecepatan tindakan penting dan terlihat seperti mengetik.
Misalnya, dalam tabel berikut, penundaan input pengguna akan dilaporkan sebagai 1.000 ms dalam interval ini. Penghitung melaporkan keterlambatan input pengguna paling lambat dalam interval karena persepsi pengguna tentang "lambat" ditentukan oleh waktu input paling lambat (maksimum) yang mereka alami, bukan kecepatan rata-rata dari semua input total.
| Telepon | 0 | 1 | 2 |
|---|---|---|---|
| Penundaan | 16 mdtk | 20 md | 1.000 ms |
Mengaktifkan dan menggunakan penghitung kinerja baru
Untuk menggunakan penghitung kinerja baru ini, Anda harus terlebih dahulu mengaktifkan kunci registri dengan menjalankan perintah ini:
reg add "HKLM\System\CurrentControlSet\Control\Terminal Server" /v "EnableLagCounter" /t REG_DWORD /d 0x1 /f
Catatan
Jika Anda menggunakan Windows 10, versi 1809 atau yang lebih baru atau Windows Server 2019 atau yang lebih baru, Anda tidak perlu mengaktifkan kunci registri.
Selanjutnya, mulai ulang server. Kemudian, buka Monitor Performa, dan pilih tanda plus (+), seperti yang ditunjukkan pada cuplikan layar berikut.

Setelah melakukannya, Anda akan melihat dialog Tambah Penghitung, di mana Anda dapat memilih Penundaan Input Pengguna per Proses atau Penundaan Input Pengguna per Sesi.


Jika Anda memilih Penundaan Input Pengguna per Sesi, Anda akan melihat Instans dari objek yang dipilih (disebut juga, proses) dalam format SessionID:ProcessID <Process Image>.
Misalnya, jika aplikasi Kalkulator berjalan di ID Sesi 1, Anda akan melihat 1:4232 <Calculator.exe>.
Catatan
Tidak semua proses disertakan. Anda tidak akan melihat proses apa pun yang berjalan sebagai SYSTEM.
Penghitung mulai melaporkan penundaan input pengguna segera setelah Anda menambahkannya. Perhatikan bahwa skala maksimum diatur ke 100 (md) secara default.

Selanjutnya, mari kita lihat Penundaan Input Pengguna per Sesi. Ada instans untuk setiap ID sesi, dan penghitungnya menunjukkan penundaan input pengguna dari proses apa pun dalam sesi yang ditentukan. Selain itu, ada dua instans yang disebut "Maks" (penundaan input pengguna maksimum di semua sesi) dan "Rata-rata" (rata-rata mengatur semua sesi).
Tabel ini menunjukkan contoh visual dari instans ini. (Anda bisa mendapatkan informasi yang sama di Perfmon dengan beralih ke jenis grafik Laporan.)
| Jenis penghitung | Nama Instans | Penundaan yang dilaporkan (ms) |
|---|---|---|
| Penundaan Input Pengguna per proses | 1:4232 <Calculator.exe> | 200 |
| Penundaan Input Pengguna per proses | 2:1000 <Calculator.exe> | 16 |
| Penundaan Input Pengguna per proses | 1:2000 <Calculator.exe> | 32 |
| Penundaan Input Pengguna per sesi | 1 | 200 |
| Penundaan Input Pengguna per sesi | 2 | 16 |
| Penundaan Input Pengguna per sesi | Rata-rata | 108 |
| Penundaan Input Pengguna per sesi | Maks | 200 |
Penghitung yang digunakan dalam sistem kelebihan beban
Sekarang mari kita lihat apa yang akan Anda lihat di laporan jika performa aplikasi menurun. Grafik berikut menunjukkan pembacaan untuk pengguna yang bekerja dari jarak jauh di Microsoft Word. Dalam kasus ini, performa server RDSH menurun seiring waktu karena semakin banyak pengguna yang masuk.

Berikut cara membaca garis grafik:
- Garis merah muda menunjukkan jumlah sesi yang masuk di server.
- Garis merah adalah penggunaan CPU.
- Garis hijau adalah penundaan input pengguna maksimum di semua sesi.
- Garis biru (ditampilkan sebagai hitam dalam grafik ini) menunjukkan rata-rata penundaan input pengguna di semua sesi.
Anda akan melihat bahwa ada korelasi antara lonjakan CPU dan penundaan input pengguna—karena CPU mendapatkan lebih banyak penggunaan, penundaan input pengguna meningkat. Selain itu, karena semakin banyak pengguna yang ditambahkan ke sistem, penggunaan CPU semakin mendekati 100%, yang menyebabkan lonjakan penundaan input pengguna yang lebih sering. Meskipun penghitung ini sangat berguna dalam kasus di mana server kehabisan sumber daya, Anda juga dapat menggunakannya untuk melacak penundaan input pengguna yang terkait dengan aplikasi tertentu.
Opsi Konfigurasi
Hal penting yang perlu diingat saat menggunakan penghitung kinerja ini adalah melaporkan penundaan input pengguna pada interval 1.000 ms secara default. Jika Anda mengatur properti interval sampel penghitung kinerja (seperti yang ditunjukkan pada cuplikan layar berikut) ke sesuatu yang berbeda, nilai yang dilaporkan akan salah.

Untuk memperbaikinya, Anda dapat mengatur kunci registri berikut agar sesuai dengan interval (dalam milidetik) yang ingin Anda gunakan. Misalnya, jika kita mengubah Sampel setiap x detik menjadi 5 detik, kita perlu mengatur kunci ini menjadi 5000 ms.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server]
"LagCounterInterval"=dword:00005000
Catatan
Jika Anda menggunakan Windows 10, versi 1809 atau yang lebih baru atau Windows Server 2019 atau yang lebih baru, Anda tidak perlu mengatur LagCounterInterval untuk memperbaiki penghitung kinerja.
Kami juga telah menambahkan beberapa kunci yang mungkin berguna bagi Anda di bawah kunci registri yang sama:
LagCounterImageNameFirst — atur kunci ini ke DWORD 1 (nilai default 0 atau kunci tidak ada). Ini mengubah nama penghitung menjadi "Image Name <SessionID:ProcessId>." Misalnya, "explorer <1:7964>." Ini berguna jika Anda ingin mengurutkan menurut nama gambar.
LagCounterShowUnknown — atur kunci ini ke DWORD 1 (nilai default 0 atau kunci tidak ada). Ini menunjukkan proses apa pun yang berjalan sebagai layanan atau SISTEM. Beberapa proses akan muncul dengan sesi mereka ditetapkan sebagai "?."
Seperti inilah tampilannya jika Anda mengaktifkan kedua kunci:

Menggunakan penghitung baru dengan alat non-Microsoft
Alat pemantauan dapat menggunakan penghitung ini dengan Menggunakan Penghitung Kinerja.
Bagikan umpan balik Anda
Anda dapat mengirimkan umpan balik untuk fitur ini melalui Hub Umpan Balik. Pilih Aplikasi > Semua aplikasi lain dan sertakan "penghitung kinerja RDS—monitor performa" di judul postingan Anda.