Teknoloji

Yeni VPS Aldığınızda İlk Yapmanız Gerekenler: CPU, Disk ve Ağ Performansını Benchmark ile Test Etmek

Neden Yeni Bir VPS’i İlk Gün Benchmark Etmelisiniz?

Yeni bir VPS satın aldığınızda çoğu zaman panellerde yazan vCPU, RAM, NVMe ve bant genişliği değerlerine güvenip doğrudan uygulamayı kurmaya geçiyoruz. Oysa üretim ortamına geçmeden önce yapacağınız basit birkaç CPU, disk ve ağ benchmark testi, aylar sonra karşınıza çıkabilecek performans sürprizlerini daha en baştan ortaya çıkarabilir. Özellikle e-ticaret sitesi, SaaS ürünü, oyun sunucusu veya yüksek trafikli bir içerik projesi çalıştırıyorsanız, altyapınızın gerçekte ne kadar güçlü olduğunu sayılarla görmek zorundasınız.

DCHost olarak sahada gördüğümüz en yaygın problem, seçilen VPS paketinin kâğıt üzerinde doğru görünmesine rağmen, gerçek iş yükü altında CPU sınırına çok erken dayanması, disk I/O kuyruğunun dolması veya ağ gecikmesinin TTFB değerlerini şişirmesidir. Bu makalede, yeni aldığınız VPS üzerinde CPU, disk ve ağ performansını benchmark araçlarıyla adım adım nasıl test edeceğinizi, sonuçları nasıl yorumlayacağınızı ve bu verileri kapasite planlamasında nasıl kullanmanız gerektiğini anlatacağız. Yazıyı bitirdiğinizde, elinizde hem kendi VPS’inizin net performans fotoğrafı olacak hem de ileride yapacağınız optimizasyonlar için sağlam bir referans noktası oluşturacaksınız.

Benchmark’a Başlamadan Önce: Sunucunuzu Tanıyın

Test komutlarına geçmeden önce, elinizdeki VPS’in temel donanım özelliklerini ve mevcut durumunu netleştirmeniz gerekir. Bu adımı atlayanlar, ileride çıkan performans problemlerinde nereye bakacaklarını bulmakta zorlanıyor.

CPU, RAM ve Disk Topolojisini Kontrol Edin

Önce temel donanım bilgilerini kaydedin:

lscpu
free -h
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT

Buradan göreceğiniz veriler:

  • vCPU sayısı ve saat hızı: Kaç vCPU var, turbo frekansları neler, tek çekirdek mi yoksa çok çekirdek performansı mı daha önemli olacak?
  • RAM miktarı: Benchmark sırasında sistemin swap’e düşmemesini istiyoruz, o yüzden boş RAM durumunu not edin.
  • Disk türü ve boyutu: NVMe mi, SSD mi, klasik HDD mi? Hangi disk hangi mount point altında?

Eğer yeni VPS’inizi bir web uygulaması için planlıyorsanız, kaynak planlaması tarafında daha derin bir bakış için yeni web sitesi için CPU, RAM ve trafik nasıl hesaplanır rehberimizi de mutlaka incelemenizi öneririz.

Mevcut Yükü ve Arka Plandaki Süreçleri Kontrol Edin

Benchmark sonuçlarınızın sağlıklı olması için test anında sistem mümkün olduğunca boş olmalı. Özellikle panel kurulu sunucularda, cron job’lar ve otomatik güncellemeler arka planda ciddi CPU ve disk tüketebilir.

top -o %CPU
vmstat 1 5
iostat -x 1 5

Buradan bakmanız gerekenler:

  • Yük ortalaması (load average): 1 dakikalık yük değeri vCPU sayınızın belirgin altında olmalı.
  • Disk kullanım yüzdesi ve bekleme süresi (await): Test öncesi disk bekleme süresinin çok yüksek olmadığına emin olun.
  • Swap kullanımı: Test öncesinde swap doluysa sonuçlar anlamını yitirir.

CPU Performansı Benchmark: Kaç Çekirdek, Ne Kadar İş?

CPU benchmark’larında amaç, tek çekirdek ve çok çekirdek performansını ayrı ayrı görebilmek ve bunu kendi iş yükünüzle eşleştirmektir. WordPress, PHP veya Node.js tabanlı çoğu web uygulaması için tek çekirdek performansı kritik iken; video işleme, sıkıştırma, büyük veritabanı işlemleri gibi görevlerde çok çekirdekli performans daha değerlidir.

sysbench ile Basit ama İşe Yarar CPU Testi

sysbench, CPU, bellek ve disk benchmark’ı için sık kullanılan, hafif ve kurulumu kolay bir araçtır. Çoğu Linux dağıtımında paket depolarından doğrudan kurulabilir:

sudo apt update && sudo apt install -y sysbench   # Debian/Ubuntu
sudo yum install -y sysbench                        # AlmaLinux/Rocky Linux

Tek çekirdek CPU benchmark’ı için:

sysbench cpu 
  --cpu-max-prime=20000 
  --threads=1 
  run

Dikkat etmeniz gereken çıktılar:

  • total time: Testin tamamlanma süresi, ne kadar düşükse o kadar iyi.
  • events per second: Saniyede kaç işlem yapabildiği; tek çekirdek kıyaslamasında güzel bir metrik.

Ardından çok çekirdek performansını görmek için vCPU sayınız kadar thread ile test yapın. Örneğin 4 vCPU için:

sysbench cpu 
  --cpu-max-prime=20000 
  --threads=4 
  run

Burada events per second değerinin tek çekirdek testine göre yaklaşık kaç kat arttığına bakın. Lineer artış beklememeniz normal; ancak artış oranı çok düşükse scheduler, overselling veya CPU limitleme gibi konuları sorgulamak gerekir.

Gerçekçi Senaryolar İçin Kısa Stres Testleri

CPU’yu kısa süreliğine tam yükte çalıştırmak, termal kısıtlamaları veya throttling davranışını görmek için faydalı olabilir. Bunun için stress-ng gibi araçlar kullanılabilir:

sudo apt install -y stress-ng

# vCPU sayısı kadar worker ile 2 dakikalık stres testi
stress-ng --cpu 4 --timeout 120s --metrics-brief

Bu tür testleri çalıştırırken paralelde bir terminalde htop veya top ile sıcaklık, frekans ve yük davranışını izlemek, ileride yoğun trafik altındaki davranış hakkında fikir verir.

Disk Benchmark: Sadece MB/s Değil, IOPS ve Gecikme Önemli

Disk performansı söz konusu olduğunda, çoğu kullanıcının aklına ilk olarak saniyede kaç MB okuma/yazma yapıldığı geliyor. Oysa veritabanı tabanlı uygulamalarda asıl kritik olan IOPS (saniyedeki giriş/çıkış işlemi sayısı) ve gecikme süreleridir. NVMe tabanlı VPS paketleri tam da bu noktada fark yaratır. Bu konuyu daha detaylı anlamak isterseniz, NVMe VPS Hosting rehberimizde hızın nereden geldiğini ve nasıl ölçüldüğünü adım adım anlattık.

dd ile Hızlı ama Sınırlı Bir İlk Bakış

dd, sadece kaba bir fikir vermek için kullanılabilecek, ancak önbellek etkisini iyi yönetmezseniz yanıltıcı olabilecek bir araçtır. Yine de ilk izlenim için işe yarar:

# Yazma testi (önbellek etkisini azaltmak için oflag=direct kullanıyoruz)
sync
dd if=/dev/zero of=/tmp/testfile bs=1G count=1 oflag=direct

# Okuma testi
sync
dd if=/tmp/testfile of=/dev/null bs=1G iflag=direct

Çıktının sonunda yazma veya okuma hızı MB/s cinsinden gösterilir. Bu değerleri farklı zaman aralıklarında tekrar edip ortalamasını almakta fayda var.

fio ile Gerçekçi IOPS ve Gecikme Testleri

Daha profesyonel bir disk benchmark’ı için fio kullanmanızı öneririz. Hem sıralı (sequential) hem de rastgele (random) okuma/yazma senaryolarını simüle edebilir.

sudo apt install -y fio

Örneğin tipik bir veritabanı yükünü andıran 4 KB rastgele okuma testi:

fio 
  --name=randread 
  --filename=/tmp/fio-testfile 
  --size=2G 
  --bs=4k 
  --iodepth=32 
  --rw=randread 
  --ioengine=libaio 
  --direct=1 
  --numjobs=1 
  --runtime=60 
  --time_based

Dikkat etmeniz gereken metrikler:

  • IOPS: Saniyedeki işlem sayısı; veritabanı ve yoğun log yazımı için kritik.
  • lat (usec/msec): Ortalama ve yüzde 99 gecikme değerleri; özellikle 99. yüzde değerinin çok yüksek olmamasına dikkat edin.
  • BW: Bant genişliği (MB/s); büyük dosya işlemleri için önemli.

Sıralı yazma testi için ise --rw=write ve daha büyük blok boyutu (örneğin 1M) kullanabilirsiniz. Örnek:

fio 
  --name=seqwrite 
  --filename=/tmp/fio-testfile2 
  --size=2G 
  --bs=1M 
  --iodepth=32 
  --rw=write 
  --ioengine=libaio 
  --direct=1 
  --numjobs=1 
  --runtime=60 
  --time_based

ioping ile Gecikmeyi Hissetmek

ioping, diskiniz için adeta ping komutunun disk versiyonudur. Özellikle küçük rastgele erişimlerde gecikmeyi hızlıca görmek için idealdir.

sudo apt install -y ioping

ioping -c 10 /tmp

Birkaç milisaniyelik ortalama değerler NVMe/SSD için makul; onlarca milisaniyeyi aşan değerler ise yoğun veritabanı yükleri için sorun çıkarabilir.

Ağ Benchmark: Gecikme, Bant Genişliği ve İstikrar

Sunucunuz ne kadar güçlü olursa olsun, kullanıcıya giden yol ağdan geçiyor. Özellikle farklı şehir veya ülkelerdeki ziyaretçileri hedefliyorsanız, ping, jitter ve gerçek bant genişliği değerlerini mutlaka test etmelisiniz. Yüksek TTFB şikayetleri çoğu zaman uygulamadan değil, ağ yolculuğundan kaynaklanır. Bu konuda detaylı bir bakış için WordPress ve PHP sitelerde yüksek TTFB sorunlarını anlattığımız rehbere de göz atabilirsiniz.

ping ve traceroute ile Temel Gecikme Analizi

Önce basit başlayın: Hedef kitlenizin yoğun olduğu bölgelerdeki tipik internet bağlantılarına yakın birkaç hedefe ping atın.

ping -c 10 google.com

Burada:

  • Ort. (avg) gecikme: Sizin için temel referans.
  • min ve max farkı: Çok oynaksa (jitter yüksekse) gerçek zamanlı uygulamalarda problem olabilir.

Ağ yolculuğunu görmek için:

traceroute google.com

Farklı lokasyonlardaki kullanıcılar için tamamen farklı rotalar çizileceğini unutmayın; bu yüzden mümkünse kendi ofisinizden veya test kullanıcılarından da geri bildirim alarak değerlendirin.

iperf3 ile Noktadan Noktaya Bant Genişliği Testi

iperf3, iki nokta arasındaki gerçek bant genişliğini ölçmek için kullanılan güçlü bir araçtır. Bunun için bir noktada server, diğerinde client modunda çalıştırmanız gerekir. Eğer başka bir VPS veya dedicated sunucunuz varsa, kendi aranızda test yapmanız en sağlıklısıdır.

# Sunucu tarafta (test edilecek VPS değilse daha iyi)
iperf3 -s

# VPS üzerinde client modunda (X.X.X.X yerine karşı IP adresi)
iperf3 -c X.X.X.X -P 4 -t 30

Burada:

  • -P 4: 4 paralel bağlantı ile test; gerçek dünyayı daha iyi simüle eder.
  • -t 30: 30 saniyelik test; anlık dalgalanmaları ortalamaya yayar.

Sonuçlardaki receiver satırı, pratikte kullanabileceğiniz bant genişliği hakkında fikir verir. Bu değeri VPS paketinizde belirtilen teorik bant genişliği ile karşılaştırabilirsiniz.

speedtest-cli ile İnternet Yönlü Hız Testi

Internet yönlü genel bir hız testi için speedtest-cli kullanılabilir. Bu araç, size yakın bir speedtest sunucusu seçerek indirme ve yükleme hızlarını ölçer.

sudo apt install -y speedtest-cli
speedtest-cli

Bu testlerde:

  • Download speed: CDN’den içerik çekmeniz veya güncelleme indirmeniz gerektiğinde önemlidir.
  • Upload speed: Kullanıcıya içerik servis ederken ve yedekleri uzak depolama alanlarına gönderirken kritik rol oynar.

Sonuçların gün içinde nasıl değiştiğini görmek için farklı saatlerde tekrarlayıp not alın. Özellikle kampanya dönemleri için yoğun trafikli kampanyalar için hosting ölçeklendirme rehberimizde ağ ve CPU etkileşimini daha stratejik bir bakışla ele alıyoruz.

Benchmark Sonuçlarını Nasıl Yorumlamalı ve Uygulamanıza Uyarlamalısınız?

Tüm bu CPU, disk ve ağ testlerinden sonra elinizde bir sürü sayı olacak. Asıl önemli olan, bu sayıları kendi iş yükünüzle eşleştirebilmek.

Web Sitesi / WordPress / WooCommerce için

  • CPU: Tek çekirdek sysbench skorunuz ne kadar yüksekse, TTFB ve dinamik sayfa oluşturma süreniz o kadar iyi olur.
  • Disk: Fio rastgele okuma IOPS değeriniz yüksekse, veritabanı sorguları ve oturum yönetimi altında site daha stabil çalışır.
  • Ağ: Hedef kitlenize olan ortalama ping değeri ve jitter ne kadar düşükse, özellikle mobil kullanıcı deneyimi o kadar pürüzsüz olur.

WordPress tabanlı projelerde sunucu tarafı optimizasyon adımlarını daha detaylı öğrenmek için WordPress için sunucu tarafı optimizasyon rehberimizi okumanızı öneririz. Benchmark sonuçlarınızı bu optimizasyonlarla birleştirdiğinizde çok daha net bir performans kazanımı elde edersiniz.

SaaS, API ve Arka Plan İşleri için

  • Çok çekirdek CPU skoru: Queue worker’lar, cron job’lar, rapor üretimi gibi paralel çalışabilen işler için belirleyici olur.
  • Disk gecikmesi: Log yazımı ve yoğun veritabanı trafiğinde yüksek gecikme, bazı isteklerin kuyrukta beklemesine yol açar.
  • Ağ throughput’u: Dış API çağrıları ve webhook’lar için tutarlı bir upload/download kapasitesi gerekir.

Oyun Sunucuları ve Gerçek Zamanlı Uygulamalar için

  • Ping ve jitter: 10–20 ms aralığının üzerindeki oynak değerler oyuncu deneyimini bozar.
  • Tek çekirdek CPU performansı: Birçok oyun sunucusu hâlâ tek çekirdeğe çok bağımlıdır.
  • Ağ istikrarı: Hızdan çok süreklilik (packet loss olmaması) daha kritiktir.

Benchmark Sonrası Adımlar: İzleme, Optimizasyon ve DCHost Desteği

Benchmark sadece başlangıçtır. Asıl değer, bu değerleri zaman içinde takip ettiğinizde ortaya çıkar. İlk gün elde ettiğiniz CPU, disk ve ağ metriklerini bir referans noktası olarak saklayın ve düzenli aralıklarla tekrarlayın. Aradaki farklar size hem altyapıdaki değişimleri, hem de uygulamanızın nasıl büyüdüğünü gösterecektir.

Sürekli İzleme ve Alarm Mekanizmaları Kurun

Elle yapılan benchmark’lar kadar, otomatik izleme sistemleri de önemlidir. CPU yükü, disk I/O gecikmesi ve ağ trafiği eşik değerleri aştığında haberdar olmak, kesinti yaşamadan ölçeklenebilmenin anahtarıdır. Bu konuda başlangıç için VPS izleme ve alarm kurulumu rehberimizde Prometheus, Grafana ve Uptime Kuma ile temel bir izleme altyapısını adım adım anlattık.

Performans Sorunları mı Görüyorsunuz? Önce Analiz Edin, Sonra Ölçekleyin

Benchmark sonuçlarınız beklentinizin altındaysa veya zaman içinde ciddi düşüşler görüyorsanız, panikleyip hemen çok büyük bir pakete geçmek yerine, problemi doğru teşhis etmeye odaklanın:

  • CPU tavan yapıyorsa: Uygulama optimizasyonu, önbellekleme ve doğru PHP-FPM/worker ayarlarını gözden geçirin.
  • Disk I/O sıkışıyorsa: Veritabanı indeksleri, sorgu optimizasyonu ve gerekirse NVMe tabanlı paketlere geçiş planlayın.
  • Ağ tarafında dalgalanma varsa: CDN, coğrafi yakınlık ve rota optimizasyonlarını düşünün.

Bu aşamada hosting maliyetlerini düşürme ve doğru VPS boyutlandırma rehberimiz, gereksiz kaynak tüketmeden akıllı ölçekleme yapmak için iyi bir yol haritası sunar.

Güvenlik ve Benchmark Dengesi

Benchmark araçları genelde kısa süreli yüksek yük oluşturur. Bu, saldırı tespiti yapan sistemler veya güvenlik duvarı kuralları tarafından zaman zaman anormal davranış olarak algılanabilir. Özellikle üretim ortamında, benchmark sırasında:

  • Yoğun trafik çeken servisleri mümkünse kısa süreliğine azaltın veya bakım moduna alın.
  • Güvenlik duvarı, fail2ban ve benzeri araçların loglarını takip edin.
  • Gereksiz portları kapatmayı ve SSH erişim güvenliğini ihmal etmeyin.

VPS tarafında güvenliği sistematik bir yaklaşımla ele almak isterseniz, VPS sunucu güvenliği rehberimizde kapıyı açık bırakmadan yaşamanın pratik yollarını detaylandırdık.

DCHost ile Beraber Planlamak

Son olarak, unutmayın ki bu süreçte yalnız değilsiniz. DCHost ekibi olarak, yeni aldığınız VPS’in benchmark sonuçlarını birlikte değerlendirebilir, hangi iş yükü için hangi kaynak kombinasyonunun daha doğru olacağına beraber karar verebiliriz. İster WordPress, ister WooCommerce, ister özel bir Laravel veya Node.js uygulaması olsun, daha ilk günden ölçerek başlayan projelerin uzun vadede çok daha stabil ve öngörülebilir çalıştığını sahada defalarca gördük.

Özetle, yeni VPS aldığınızda:

  1. Sunucuyu tanıyın: CPU, RAM, disk topolojisini kaydedin.
  2. CPU, disk ve ağ benchmark’larını sakin bir zamanda çalıştırın.
  3. Sonuçları iş yükünüzle eşleştirin ve referans olarak saklayın.
  4. Sürekli izleme ve güvenlik adımlarını ihmal etmeyin.
  5. Gerektiğinde DCHost ekibiyle sonuçları paylaşarak beraber ölçekleyin.

Böylece projelerinizi “umarım yeter” seviyesinden çıkarıp, sayılarla konuşabildiğiniz, öngörülebilir ve sağlıklı bir altyapıya taşırsınız.

Sıkça Sorulan Sorular

En ideal zaman, VPS’i teslim aldıktan hemen sonra, henüz üzerinde üretim trafiği yokken yaptığınız testlerdir. Böylece altyapının ilk günkü “temiz” performans fotoğrafını çıkarırsınız. CPU ve disk tarafında her bir senaryoyu genelde 30–120 saniye aralığında çalıştırmak yeterlidir; çok kısa testler anlık dalgalanmalardan etkilenir, çok uzun testler ise gereksiz yere sistemi yorabilir. Ağ testlerini ise günün farklı saatlerinde (yoğun ve sakin zamanlarda) tekrarlayıp ortalama bir tablo oluşturmanız iyi olur. Referans seti oluşturduktan sonra, aynı testleri ayda bir veya büyük versiyon güncellemeleri, taşıma işlemleri, planlı bakım sonralarında yeniden çalıştırmanız tavsiye edilir.

Benchmark testleri CPU, disk ve ağ üzerinde yoğun yük oluşturduğu için, mümkünse bu testleri canlı trafiğin düşük olduğu zaman dilimlerinde çalıştırmalısınız. Özellikle veritabanı sunucusunda fio gibi disk testleri yaparken, gerçek veritabanı dosyalarından farklı bir dizinde (örneğin /tmp altında) test dosyaları kullanın. CPU stres testlerinde worker sayısını mevcut vCPU sayınızdan fazla tutmamaya çalışın. Ağ testlerinde ise iperf3 gibi araçların, aynı anda gerçek kullanıcı trafiğiyle çakışmamasına dikkat edin. Üretim ortamında benchmark yapmanız şartsa, önce kısa ve düşük yoğunluklu testler ile sistemin tepkisini ölçün, ardından ihtiyaca göre süreyi ve yoğunluğu arttırın.

Düşük görünen benchmark sonuçlarında ilk refleks paketi büyütmek olsa da, bu her zaman en doğru ve ekonomik çözüm değildir. Önce sonuçları benzer sınıftaki VPS’ler için makul kabul edilen değerlerle karşılaştırın ve testleri birkaç kez tekrarlayarak tutarlılığı kontrol edin. Ardından uygulama tarafını gözden geçirin: Veritabanı indeksleri, PHP-FPM veya Node.js worker ayarları, önbellek (Redis, opcache) yapılandırmaları gibi birçok parametre yanlış ayarlanmış olabilir. Ölçtüğünüz darboğaz net şekilde CPU veya I/O sınırına dayanıyorsa ve optimizasyona rağmen çözülmüyorsa, o zaman daha yüksek paket veya NVMe diskli bir plana geçmek mantıklıdır. DCHost ekibiyle sonuçları paylaşarak birlikte değerlendirme yapmak da doğru kararı vermenizi kolaylaştırır.

sysbench, fio, iperf3 gibi benchmark araçları normalde pasif durumda olduklarında herhangi bir performans yükü veya ciddi güvenlik riski oluşturmazlar. Ancak yanlış yapılandırılmış script’ler ya da cron job’lar bu araçları istemeden düzenli aralıklarla çalıştırabilir ve kaynak tüketimine yol açabilir. Bu nedenle, testleriniz bittikten sonra otomatik zamanlayıcılar bırakmadığınızdan emin olun ve sadece manuel çalıştırdığınız komutları kullanın. Ayrıca, iperf3’ü server modunda sürekli açık bırakmak, gereksiz bir portun dinlemesi anlamına gelir; test sona erdiğinde iperf3 sürecini durdurmanız ve gerekirse paketi kaldırmanız daha temiz bir yaklaşım olacaktır. Düzenli güvenlik denetimleri ile bu tür yardımcı araçların kontrolünü elinizde tutabilirsiniz.