Windows Sunucu Performansı Nasıl İzlenir ve İyileştirilir

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.

  1. Get-Counter '\Processor(_Total)\% Processor Time' ile anlık işlemci yükünü ölçün.
  2. Get-Process | Sort-Object CPU -Descending | Select-Object -First 8 ile en çok işlemci tüketen süreci bulun.
  3. Get-Counter '\Memory\Available MBytes' ile boşta kalan belleği kontrol edin.
  4. Get-Counter '\PhysicalDisk(_Total)\% Disk Time' ile disk darboğazını tespit edin.
  5. Değerler saatler boyunca yüksek kalıyorsa VDS panelinizden çekirdek veya RAM yükseltin, ya da gereksiz servisi durdurun.
Panel Yok — RDP veya konsol üzerinden PowerShell
Sistem Windows Server 2019/2022
Yetki Administrator
Narhost ürünü VDS Sunucu

Başlamadan önce

  • RDP ya da panel konsoluyla sunucuya Administrator olarak bağlanabiliyor olun.
  • PowerShell yerleşiktir, ek kurulum gerekmez; aşağıdaki komutları normal bir pencerede çalıştırabilirsiniz.
  • Sorunun ne zaman başladığını not edin: belirli bir saatte mi, bir güncelleme sonrası mı, belirli bir uygulama açıldığında mı.
  • Kaynağı yükseltmeden önce paketinizin çekirdek ve RAM sınırını VDS panelinizden kontrol edin.
windows sunucu performans izleme adımları — işlemci, bellek ve disk sayaçlarını PowerShell ile ölçme
Dört adımda işlemci, bellek, disk ve servis yükü kontrol edilir; sayılar sürekli yüksekse kaynak yükseltilir.

Windows sunucu performansı neden düşer

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.

Windows sunucu performans izleme — adım adım

  1. İşlemci yükünü ölçün. RDP veya panel konsoluyla bağlanıp PowerShell açın.
    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.

  2. En çok işlemci tüketen süreci bulun.
    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.

  3. Boşta kalan belleği kontrol 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.

  4. Disk yükünü ölçün.
    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.

  5. Çalışan servis sayısını gözden geçirin.
    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.

Doğrulama

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.

Hâlâ çözülmediyse

  • İşlemci sürekli yüksek ama tanıdık bir süreç yok. Süreç listesini kullanıcıya göre de sıralayıp arka planda unutulmuş bir uygulama arayın; ayrıntılı izleme için işlemci yükünü takip etme kartına bakın.
  • Bellek her gün biraz daha azalıyor. Bir bellek sızıntısından şüphelenin; hangi sürecin zamanla büyüdüğünü bellek takibi kartındaki yöntemle izleyin.
  • Sorun bir güncellemeden sonra başladı. Arka planda çalışan güncelleme denetimi geçici olarak kaynak tüketebilir; otomatik güncellemeleri geçici olarak durdurma kartına bakın.
  • Hiçbir sayaç yüksek değil ama uygulama yine de yavaş. Darboğaz sunucuda değil ağ ya da uygulama katmanındadır; destek talebi açı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ığı.

Destek talebi aç

Sıkça Sorulan Sorular

Windows sunucuda CPU kullanımını komutla nasıl görürüm?

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 yerine PowerShell kullanmanın farkı ne?

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.

Performans sorunu her zaman paket yükseltmeyle mi çözülür?

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ü?

Çö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.

Etiketler: performanspowershell

İlgili çözümler