VPS mi VDS mi? İşlemci paylaşımını ölçerek karar verin
Sanal sunucunuzun işlemci zamanının ne kadarını komşularınız kullanıyor? steal time değerini okumayı ve ne zaman ayrılmış çekirdeğe geçmeniz gerektiğini anlatıyoruz.
VPS ile VDS arasındaki fark çoğu zaman pazarlama cümleleriyle anlatılır. Oysa farkı kendi sunucunuzda ölçebilirsiniz. Bu yazıda steal time değerini nasıl okuyacağınızı ve hangi eşikten sonra ayrılmış çekirdeğe geçmenin anlamlı olduğunu anlatıyoruz.
Steal time nedir
Bir sanal makinede işletim sistemi, işlemciye "çalışmak istiyorum" dediği hâlde hipervizörün o anda fiziksel çekirdeği başka bir sanal makineye verdiği süreyi steal olarak kaydeder. Yani sizin süreçleriniz hazırdır, ama sıra komşudadır.
Paylaşımlı vCPU kullanan VPS'lerde bir miktar steal normaldir. Sorun, bu değerin sürekli yüksek olması ve uygulamanızın yanıt süresine yansımasıdır.
Nasıl ölçülür
En hızlı yol top komutudur. Üst satırdaki %Cpu(s) satırının en sonundaki st değeri steal yüzdesidir:
%Cpu(s): 12.3 us, 2.1 sy, 0.0 ni, 81.9 id, 0.4 wa, 0.0 hi, 0.2 si, 3.1 st
Anlık değer yanıltıcı olabilir. Bir süre boyunca örnek almak için vmstat kullanın:
vmstat 5 120
Bu komut on dakika boyunca beş saniyede bir ölçüm alır. Son sütun (st) steal değeridir. Uzun süreli izleme için sysstat paketini kurup sar -u çıktısına bakabilirsiniz:
sudo apt install sysstat
sudo systemctl enable --now sysstat
sar -u -f /var/log/sysstat/sa$(date +%d)
Değerleri yorumlamak
- %0–2: Paylaşımlı sunucu için olağan. Fark edilmez.
- %2–5: Yoğun saatlerde hafif gecikme. Çoğu web uygulaması için yine kabul edilebilir.
- %5 üzeri ve sürekli: İşlemci zamanının anlamlı bir kısmını kaybediyorsunuz. Özellikle veritabanı sorgularında ve derleme işlerinde süre uzar.
Burada önemli olan ortalama değil, uygulamanızın en çok çalıştığı saatlerdeki değerdir. Gece 03.00'teki %0 steal, öğlen 13.00'teki %8'i telafi etmez.
Ne zaman VDS
Steal'i yüksek bulduysanız önce iki şeyi kontrol edin: uygulamanız gerçekten işlemciye mi bağlı, yoksa disk veya ağ beklemesi mi yaşıyor? wa (I/O wait) değeri yüksekse sorun işlemcide değildir.
İşlemci gerçekten darboğazsa ve steal sürekli %5'in üzerindeyse, ayrılmış çekirdekli bir VDS aynı çekirdek sayısında daha tutarlı sonuç verir. VDS'te çekirdekleriniz CPU pinning ile yalnızca size ayrılır; steal değeri pratikte sıfıra iner.
Kısa kontrol listesi
vmstat 5 120ile yoğun saatte örnek alın.stsütununun ortalamasına ve tepe değerlerine bakın.wadeğerini kontrol edin; yüksekse disk tarafını inceleyin.- Uygulama yanıt sürelerinizi (ör. p95) aynı zaman aralığıyla karşılaştırın.
- Steal ile yanıt süresi birlikte artıyorsa ayrılmış çekirdeği değerlendirin.
Bu yazıyla ilgili hizmetler
- VPS sunucu Paylaşımlı vCPU, ayrılmış bellek. Geliştirme, küçük uygulamalar ve VPN için.
- VDS sunucu Size ayrılmış fiziksel çekirdekler. Komşu yükünden etkilenmeyen performans.
İlgili yazılar
Yeni bir Linux sunucuda ilk 30 dakika
Sunucunuz teslim edildi. İnternete açık bir makinede ilk yarım saatte yapmanız gerekenler: SSH anahtarı, ayrı kullanıcı, güvenlik duvarı ve otomatik güvenlik güncellemeleri.
SPF, DKIM ve DMARC: e-postalarınız neden spam klasörüne düşüyor
Alıcı sunucu bir e-postanın gerçekten sizden geldiğini nasıl anlar? Üç DNS kaydının ne işe yaradığını, nasıl yazıldığını ve en sık yapılan hataları anlatıyoruz.
DNS değişikliği neden hemen yansımaz? TTL'yi anlamak
"DNS yayılması 48 saat sürer" sözünün aslı nedir? Önbelleklerin nasıl çalıştığını ve sunucu taşırken kesintiyi dakikalara indirmek için TTL'yi nasıl planlayacağınızı anlatıyoruz.