Artikel ini menjelaskan cara mengatasi dan menyelesaikan masalah penggunaan CPU tinggi pada instans ECS Windows.
Gejala
Anda mungkin mengalami gejala berikut pada instans ECS Windows Anda:
Sistem menjadi lambat, waktu respons layanan meningkat, dan kinerja aplikasi menurun.
Saat memantau instans di Konsol ECS, Anda melihat bahwa penggunaan atau beban CPU tinggi. Sebagai panduan umum, penggunaan CPU dianggap tinggi jika melebihi 80%, dan beban dianggap tinggi jika melebihi 0,5.
Anda menerima pemberitahuan peringatan yang menunjukkan bahwa penggunaan atau beban CPU telah melebihi ambang batas yang dikonfigurasi.
Kemungkinan penyebab
Penggunaan CPU tinggi dapat disebabkan oleh hal-hal berikut:
Instans ECS terinfeksi malware, seperti virus atau trojan.
Perangkat lunak antivirus pihak ketiga pada instans ECS mengonsumsi sumber daya CPU yang tinggi.
Terjadi pengecualian aplikasi pada instans ECS, seperti proses bisnis yang berjalan pada kapasitas penuh akibat serangan CC, kode dengan loop tak terbatas, pengecualian driver, penggunaan I/O tinggi, atau aplikasi yang menyebabkan interupsi berulang.
Prosedur
Memeriksa penggunaan CPU dengan Resource Monitor
Bagian ini menggunakan Resource Monitor pada instans Windows Server 2022 untuk menunjukkan cara mendiagnosis penyebab penggunaan CPU tinggi. Untuk informasi lebih lanjut tentang tool umum lainnya, lihat Tool umum.
Lakukan koneksi ke instans ECS menggunakan VNC.
Untuk informasi lebih lanjut, lihat Koneksi menggunakan VNC.
Di bagian bawah desktop, klik ikon Search, masukkan
Resource Monitor, lalu klik OK.Pada jendela Resource Monitor, periksa apakah ada proses yang memiliki penggunaan CPU sangat tinggi.

Untuk proses yang mengonsumsi sumber daya CPU tinggi, catat ID proses (PID) dan nama programnya.
Buka Task Manager. Pada tab Details, temukan nama proses abnormal dan PID-nya yang telah Anda identifikasi di Resource Monitor. Klik kanan nama proses tersebut dan pilih Open file location untuk menentukan apakah proses tersebut merupakan program berbahaya.
Menyelesaikan penggunaan CPU tinggi
Tabel berikut menjelaskan penyebab umum penggunaan CPU tinggi beserta solusinya.
Gejala | Penyebab | Solusi |
Program atau proses pengguna abnormal secara terus-menerus mengonsumsi sejumlah besar sumber daya CPU, sehingga menyebabkan penggunaan dan beban CPU tinggi. | Aplikasi mengalami malfungsi atau tidak dioptimalkan dengan baik, sehingga mengonsumsi sumber daya CPU secara berlebihan. |
|
Program atau proses pengguna normal mengonsumsi sejumlah besar sumber daya CPU dalam periode yang lama, sehingga menyebabkan penggunaan dan beban CPU tinggi. | Aplikasi penting untuk bisnis memerlukan lebih banyak sumber daya CPU daripada yang disediakan oleh instans. | Jika CPU instans menjadi bottleneck kinerja, pertimbangkan solusi berikut berdasarkan kebutuhan bisnis Anda:
|
Program atau proses bisnis tunggal sesekali mengalami penggunaan dan beban CPU tinggi, tetapi durasinya singkat dan frekuensinya rendah. | Program bisnis perlu dioptimalkan untuk menangani konsumsi sumber daya CPU tinggi yang dipicu oleh skenario bisnis khusus, seperti enkripsi, dekripsi, dan konkurensi tinggi. | Optimalkan program bisnis. |
Tidak ada satu program atau proses pun yang mengonsumsi sejumlah besar sumber daya CPU, tetapi penggunaan CPU keseluruhan tinggi dan bebannya rendah. | Sumber daya CPU yang diperlukan untuk operasi normal layanan pada instans melebihi kapasitas CPU instans tersebut. | Jika CPU instans menjadi bottleneck, lakukan upgrade tipe instans. Untuk informasi lebih lanjut, lihat Mengubah tipe instans. |
Tool umum
Bagian ini menjelaskan tool Windows yang membantu mengidentifikasi penyebab penggunaan CPU tinggi.
Task Manager
Task Manager menampilkan daftar aplikasi dan membantu Anda menemukan aplikasi yang mengonsumsi sumber daya CPU tinggi. Gambar berikut menunjukkan jendela Task Manager.

Saat memeriksa penggunaan CPU pada tab Performance, klik kanan grafik penggunaan CPU dan pilih .
Gambar berikut menunjukkan penggunaan dua CPU logis.

Jika penggunaan CPU suatu proses melonjak hampir mencapai 100% sementara penggunaan proses lain tetap rendah, penyebabnya mungkin terkait dengan pemrosesan I/O jaringan.
Resource Monitor
Resource Monitor memberikan gambaran jelas tentang penggunaan CPU dan memungkinkan Anda mencari proses berdasarkan handle dan modul yang terkait.

Process Explorer
Process Explorer adalah tool Microsoft Sysinternals. Dengan mengonfigurasi simbol yang tepat, Anda dapat memeriksa tumpukan panggilan thread aplikasi untuk menemukan driver yang berpotensi bermasalah. Untuk mengunduh Process Explorer, lihat Process Explorer.
Gambar berikut menunjukkan jendela tool Process Explorer.

Performance Monitor
Performance Monitor adalah tool Microsoft untuk mengumpulkan counter kinerja dari berbagai komponen. Untuk menganalisis konsumsi sumber daya CPU sistem, Anda dapat memeriksa beberapa counter berikut.
Performance Monitor memiliki tiga parameter inti berikut:
\Processor(_Total)\% Processor Time: Persentase waktu yang dihabiskan prosesor untuk mengeksekusi thread non-idle.\Processor(_Total)\% Processor Time=\Processor(*)\% User Time+\Processor(*)\% Privileged Time.\Processor(*)\% User Time: Waktu yang dihabiskan untuk mengeksekusi kode program dalam mode user. Counter ini dapat membantu Anda menentukan aplikasi atau pemanggilan fungsi mana yang paling banyak menghabiskan waktu.\Processor(*)\% Privileged Time: Persentase waktu yang dihabiskan aplikasi untuk mengeksekusi system call dalam mode kernel (mode istimewa), seperti untuk driver, IRP, dan context switch. Jika sistem operasi menghabiskan lebih dari 30% waktunya dalamPrivileged Time, instans kemungkinan besar sedang melakukan operasi throughput I/O tinggi.Saat nilai
% Privileged Timetinggi, Anda perlu memeriksa lebih lanjut counter% DPC Time,% Interrupt Time, danContext Switches/sec.Nilai
% DPC Timedan% Interrupt Timeyang tinggi menunjukkan bahwa perangkat yang tidak dikenal sedang melakukan banyak operasi atau memiliki kinerja buruk.Nilai
context switchyang tinggi berarti kernel sering melakukan switching antar proses atau thread pada CPU. Untuk informasi lebih lanjut, lihat The Case of the 2 Million Context Switches dan Mark Russinovich's The Case of the System Process CPU Spikes.Nilai
Context Switches/secyang tinggi menunjukkan bahwa sejumlah besar thread berada dalam status Ready. Untuk menyelesaikan masalah ini, Anda perlu mengurangi jumlah thread.
Dokumen terkait
Untuk menyelesaikan penggunaan CPU tinggi pada sistem Linux, lihat Mengatasi dan menyelesaikan masalah penggunaan atau beban CPU tinggi pada instans Linux.