Sunucu için kaç vCPU ve kaç GB RAM gerekir?
Bu sorunun tek bir cevabı yok, ama cevabı bulmanın tek bir yolu var: hangi kaynağın sizi sınırladığını önce ölçmek. Sunucu yavaşladığında en sık yapılan hata vCPU eklemek oluyor ve bu, yükün büyük kısmında hiçbir şey değiştirmiyor.
vCPU: sayı mı, çekirdek başına performans mı?
Kritik ayrım şu: yükünüz paralelleşiyor mu?
Bazı iş yükleri işi birden fazla çekirdeğe dağıtır — web sunucusu, PHP-FPM havuzu, birden fazla oyun sunucusu süreci. Bunlarda çekirdek eklemek gerçekten işe yarar.
Bazı iş yükleri ise ana işi tek bir iş parçacığında yapar. Burada 4 çekirdek yerine 16 çekirdek almak ölçülebilir hiçbir kazanç vermez; belirleyici olan o tek çekirdeğin saat hızı ve IPC'sidir.
| İş yükü | Belirleyici olan | vCPU eklemek işe yarar mı? |
|---|---|---|
| FiveM / RedM (CitizenFX) | Tek çekirdek performansı | Hayır, 3-6 vCPU sonrası fayda yok |
| Minecraft (Java, vanilla) | Tek çekirdek performansı | Kısmen, 4-6'dan sonra düşüyor |
| MySQL / MariaDB | Bellek + disk gecikmesi | Bir noktaya kadar |
| Nginx + PHP-FPM | Eşzamanlı istek sayısı | Evet |
| alt:V | Ağ ve akış iş parçacıkları | Evet |
| Çoklu CS 1.6 sunucusu | Süreç sayısı | Evet, çekirdek başına 3-4 sunucu |
| Video kodlama | Toplam çekirdek | Evet, doğrusal yakın |
Pratik kural: tek iş parçacıklı yükte işlemci ailesini yükselt, paralel yükte çekirdek ekle.
RAM: hesap nasıl kurulur?
RAM tahmini üç kalemden oluşur:
- Taban tüketim — işletim sistemi ve sürekli çalışan servisler. Linux'ta 0,5-1 GB, Windows Server'da 2-3 GB.
- Uygulamanın sabit yükü — oyun sunucusunda kaynak listesi ve varlıklar, web uygulamasında kod ve önbellek.
- Birim başına değişken — bağlı oyuncu, eşzamanlı istek veya açık oturum sayısıyla artan kısım.
Örnek: 64 slotluk bir FiveM sunucusu için Linux tabanı 1 GB, kaynak listesi ve stream dosyaları 6 GB, oyuncu başına 50 MB × 64 = 3,2 GB, MySQL 2 GB → yaklaşık 12 GB. 16 GB pakette rahat çalışır, 8 GB'ta yoğun saatte sınırda kalır.
Swap'a güvenmeyin. Swap, belleğin bittiği anı çökmeye çevirmek yerine yavaşlamaya çevirir; çözüm değil, sigortadır. Disk üzerinden sayfalama yapan bir oyun sunucusu oyuncular için zaten kullanılamaz durumdadır.
Disk: kapasiteden çok gecikme
Disk seçerken çoğu kişi GB'a bakar, oysa çoğu iş yükünde sorun kapasite değil gecikme olur. NVMe ile SATA SSD arasındaki fark sıralı okumada yüzde mertebesinde ama küçük rastgele okumada katlarla ölçülür — ve veritabanı sorguları tam olarak küçük rastgele okumadır.
Disk hesabında akılda tutulacaklar:
- Büyüme kalıcıdır. Oyun dünyası kaydı, MySQL binlog, yedekler ve log dosyaları geri küçülmez.
- Yedek yer kaplar. Aynı makinede yedek tutuyorsanız disk ihtiyacını 1,5 katı hesaplayın.
- Disk küçültme desteklenmez. Veri kaybı riski taşıdığı için çoğu sağlayıcıda (Datafex dahil) yalnızca büyütme yapılır. Bu yüzden baştan rahat bir alan seçmek sonradan taşımaktan kolaydır.
Yükseltme kararını neye göre vermeli?
Donanım büyütmeden önce şunları ölçün:
- CPU:
topiçinde tek bir çekirdek sürekli %100'de mi, yoksa yük çekirdekler arasında dağılmış mı? Birincisi ise çekirdek eklemek boşa gider. - Bellek:
free -mçıktısındaavailabledeğeri tepe saatte ne kadar? 500 MB'ın altına düşüyorsa RAM gerçekten yetersiz. - Disk:
iostat -x 1içinde%utilveawait.awaitmilisaniye mertebesine çıkıyorsa darboğaz disktedir. - Uygulama: Yavaş sorgu logu açık mı? Çok kez, donanım yeterliyken indekslenmemiş tek bir sorgu tüm sunucuyu bekletir.
Bu dördünü ölçmeden yapılan yükseltme, çoğu zaman doğru parayı yanlış yere harcamak olur.
Nereden devam etmeli?
Kaynak paylaşımının performansı nasıl etkilediğini ayrı yazdık: VDS nedir, VPS'ten farkı nedir?
Oyun sunucusu kuruyorsanız oyun başına oyuncu sayısına göre RAM, vCPU ve disk önerilerini derledik: oyun sunucusu paketleri. Genel kullanım içinse kaynakları tek tek seçip aylık tutarı anında görebilirsiniz: sanal sunucu paketleri.