Ders 6.17: Darboğazı bulmak
'Sunucu yavaş' CPU'nun meşgul olduğu, belleğin yetmediği ya da süreçlerin diski beklediği anlamına gelebilir. Doğru sütunları okursan araçlar bunları saniyeler içinde ayırt eder: vmstat çalışabilir ve engellenmiş süreçleri ve CPU zamanının nereye gittiğini, G/Ç beklemesi dahil, gösterir; iostat her diskin ne kadar meşgul olduğunu ve isteklerin ne kadar beklediğini gösterir; pidstat G/Ç'yi hangi sürecin yaptığını gösterir. Sonra belirtiyi değil nedeni düzeltirsin. Laboratuvarda CPU çoğunlukla boştayken mağaza yavaş; bunu veri diskini dolduran bir rapor dışa aktarımına kadar izliyor ve dışa aktarıma şimdi ve kalıcı olarak daha düşük G/Ç önceliği veriyorsun.
17 dk
Bu derste öğreneceklerin
- CPU, bellek ve G/Ç darboğazlarını ayırt etmek
- vmstat'ın r, b ve wa sütunlarını okumak
- iostat -x await ve %util değerlerini okumak
- G/Ç'yi yapan süreci pidstat -d ile bulmak
- Bir işin G/Ç önceliğini ionice ve systemd ile düşürmek
Temel terimler
- Yük ortalaması
- Çalışan ya da bekleyen, diski bekleyenler dahil, ortalama süreç sayısı.
- wa (G/Ç beklemesi)
- Süreçler G/Ç beklerken CPU'nun boşta olduğu zaman payı.
- await
- Bir G/Ç isteğinin kuyruk dahil ortalama süresi, milisaniye.
- %util
- Aygıtın meşgul olduğu zaman payı; %100'e yakını doymuş demektir.
- G/Ç zamanlama sınıfı
- Çekirdeğin bir sürecin disk erişimine nasıl öncelik verdiği: realtime, best-effort, idle.
← Kullanıcı değiştirmek: su ve sudo · Tüm dersler · APT depo güveni ve sabitleme →