Son doğrulama: Eylül 2026 · Windows Server 2022 test sunucusunda PowerShell ile denendi
Hızlı çözüm
Windows sunucu performans izleme için Görev Yöneticisi yerine PowerShell sayaçlarına bakın; CPU, bellek ve disk kullanımını tek komutla ölçüp darboğazı adı üstünden bulursunuz.
Get-Counter '\Processor(_Total)\% Processor Time' ile anlık işlemci yükünü ölçün.Get-Process | Sort-Object CPU -Descending | Select-Object -First 8 ile en çok işlemci tüketen süreci bulun.Get-Counter '\Memory\Available MBytes' ile boşta kalan belleği kontrol edin.Get-Counter '\PhysicalDisk(_Total)\% Disk Time' ile disk darboğazını tespit edin.| Panel | Yok — RDP veya konsol üzerinden PowerShell |
|---|---|
| Sistem | Windows Server 2019/2022 |
| Yetki | Administrator |
| Narhost ürünü | VDS Sunucu |
Başlamadan önce

VDS ve VPS yönetimsizdir: işletim sistemindeki servisler, arka planda çalışan yazılımlar ve güvenlik taraması sunucunuzda sizin denetiminizdedir, Narhost bu katmana müdahale etmez. Yavaşlığın kaynağı genelde dört yerden biridir: bir sürecin işlemciyi tüketmesi (çoğu zaman antivirüs taraması ya da unutulmuş bir arka plan görevi), belleğin dolması, disk kuyruğunun birikmesi ya da ağ bant genişliğinin dolması. Windows sunucu performans izleme bu dördünü ayrı ayrı ölçüp hangisinin darboğaz olduğunu netleştirir; “sunucu yavaş” gözlemi tek başına hangi kaynağın yetersiz kaldığını söylemez.
Ölçmeden yükseltme yapmak çoğu zaman parayı boşa harcar: işlemci darboğazı olan bir sunucuya RAM eklemek performansı değiştirmez. Bu yüzden aşağıdaki adımlar önce teşhis, ancak teşhis sonuç verirse yükseltme sırasını izler. Aşağıdaki komutların söz dizimi Microsoft’un resmi Get-Counter referansında belgelidir.
Get-Counter '\Processor(_Total)\% Processor Time' | Select-Object -ExpandProperty CounterSamples | Select-Object -ExpandProperty CookedValue
Beklenen sonuç: tek bir yüzde değeri döner. Test sunucumuzda 11,57 çıktı — 10 çekirdekli boş bir VDS’te normal aralık budur; sizde sürekli %80’in üzerindeyse bir sonraki adıma geçin.
Get-Process | Sort-Object CPU -Descending | Select-Object -First 8 Name,Id,CPU,@{N='MemMB';E={[math]::Round($_.WorkingSet/1MB,1)}}
Beklenen sonuç: sıralı bir tablo. Test sunucumuzda listenin başında Windows Defender’ın tarama süreci (MsMpEng) ve birkaç svchost örneği çıktı; bu ikisi boş bir sunucuda bile en çok işlemci biriktiren süreçlerdir, alışılmadıktır sayılmaz. Listenin başında tanımadığınız bir isim çıkarsa not edin.
Get-Counter '\Memory\Available MBytes' | Select-Object -ExpandProperty CounterSamples | Select-Object -ExpandProperty CookedValue
Beklenen sonuç: MB cinsinden boşta bellek. Test sunucusunda 32 GB RAM’in 30.604 MB’si (yaklaşık yüzde 93’ü) boştaydı; bu oran yüzde 10’un altına düşerse bellek darboğazı var demektir.
Get-Counter '\PhysicalDisk(_Total)\% Disk Time','\PhysicalDisk(_Total)\Avg. Disk Queue Length'
Beklenen sonuç: iki değer. Test sunucusunda disk zamanı yüzde 1,34, kuyruk uzunluğu 0 çıktı — beklemede kalan istek yok demektir. Kuyruk uzunluğu sürekli 2’nin üzerindeyse disk darboğazı vardır.
Get-Service | Where-Object {$_.Status -eq 'Running'} | Measure-Object | Select-Object -ExpandProperty Count
Beklenen sonuç: bir sayı. Test sunucusunda 79 servis çalışıyordu; hiç rol kurulmamış varsayılan bir Windows Server 2022 için beklenen aralık budur.
Dikkat
Bir servisi durdurmadan önce hangi rolün onu kullandığını doğrulayın; yanlış servisi kapatmak RDP veya DNS çözünürlüğünü kesebilir ve sunucuya erişimi kaybettirebilir.
Sonuç
Test sunucusunda beş ölçüm de sağlıklı sınırlar içinde çıktı: işlemci yüzde 11,6, boş bellek yüzde 93, disk zamanı yüzde 1,3, kuyruk uzunluğu 0. Windows sunucu performans izleme sonucunda sizin sayılarınız da benzer aralıktaysa darboğaz yoktur; bir ya da iki sayaç sürekli yüksekse bir sonraki bölümdeki nedenlere bakın.
Narhost desteği
Talebe şunları ekleyin: sunucu adı, yukarıdaki dört komutun çıktısı, sorunun başladığı saat ve o sırada çalışan bir uygulama olup olmadığı.
Sonraki adımlar
Get-Counter '\Processor(_Total)\% Processor Time' anlık yüzdeyi verir; birkaç dakika arayla birkaç kez çalıştırıp ortalamaya bakmak tek ölçümden daha güvenilirdir.
Görev Yöneticisi anlık görüntü verir ve pencere kapanınca geçmiş kaybolur; PowerShell sayaçları scriptlenebilir, günlüğe yazılabilir ve WinRM ile uzaktan sorgulanabilir.
Sayaçlar sürekli sınırın üzerindeyse evet; ama önce hangi sürecin veya rolün kaynağı tükettiğini bulmak gerekir, aksi hâlde daha büyük bir pakette de aynı süreç aynı oranda kaynak tüketmeye devam eder.
Bu makale sorununuzu çözdü mü?
Geri bildiriminiz için teşekkürler.
Çözemediniz mi?
Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.