Gelişmiş Minecraft Sunucu Optimizasyon Rehberi

sunucu
sunucuNisan 19, 2026

Minecraft Sunucu Performansında RAM ve JVM Yönetimi: Tam Kapsamlı Rehber

Bir Minecraft sunucusunun performansı, sadece işlemci saat hızıyla değil, Java Sanal Makinesi'nin (JVM) belleği ne kadar efektif kullandığıyla ölçülür. Yanlış yapılandırılmış Java flagleri, yüksek RAM'li makinelerde bile "Garbage Collection" (GC) kaynaklı saniyelik donmalara (lag spikes) neden olur. Bu rehber, 2026 yılı standartlarında en derin optimizasyon tekniklerini içerir.


1. Modern Başlatma Komutu (Aikar's Flags v2 - Optimize Edilmiş)

Aşağıdaki komut dizini, hem Skyblock gibi yoğun varlık (entity) içeren, hem de Survival gibi geniş dünya yüklemesi yapan sunucular için "G1GC" (Garbage First Garbage Collector) mimarisini en agresif ve stabil şekilde kullanır.

java -Xms12G -Xmx12G \
-XX:+UseG1GC \
-XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC \
-XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 \
-XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M \
-XX:G1ReservePercent=20 \
-XX:G1HeapWastePercent=5 \
-XX:G1MixedGCCountTarget=4 \
-XX:InitiatingHeapOccupancyPercent=15 \
-XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 \
-XX:SurvivorRatio=32 \
-XX:+PerfDisableSharedMem \
-XX:MaxTenuringThreshold=1 \
-Dusing.aikars.flags=https://mcflags.emc.gs \
-Daikars.new.flags=true \
-jar server.jar nogui
    

2. Flaglerin Derinlemesine Teknik Analizi

Parametre Grubu Teknik Açıklama Performans Etkisi
Hafıza Rezervasyonu -Xms ve -Xmx değerlerinin eşitlenmesi ve -XX:+AlwaysPreTouch kullanımı. İşletim sisteminin çalışma anında RAM ayırma yükünü sıfıra indirir. Sunucu açılırken tüm RAM'i fiziksel olarak kaplar, böylece oyun içinde "RAM genişleme" kasmaları yaşanmaz.
G1GC Döngü Ayarları -XX:MaxGCPauseMillis=200 ve -XX:InitiatingHeapOccupancyPercent=15 Java'nın çöp toplama işlemini %45 doluluk yerine %15 dolulukta başlatmasını sağlar. Temizlik daha sık ama çok daha küçük parçalarla yapıldığı için TPS düşüşü engellenir.
Nesne Yaşam Süresi -XX:G1NewSizePercent=30 ve -XX:MaxTenuringThreshold=1 Minecraft'ta çok hızlı oluşup silinen nesnelerin (oklar, düşen eşyalar, paketler) doğrudan "genç nesil" bölgesinde hızlıca temizlenmesini sağlar.
I/O Optimizasyonu -XX:+PerfDisableSharedMem Java'nın performans metriklerini sürekli diske yazmasını durdurur. Disk yazma hızı (I/O) kaynaklı mikro-takılmaları önler.

3. RAM Miktarına Göre "G1HeapRegionSize" Değerleri

JVM'nin belleği yönettiği küçük hücrelerin boyutu, toplam RAM kapasitesine göre ayarlanmalıdır. Yanlış seçim, bellek parçalanmasına yol açabilir.

  • 4GB - 10GB Arası: -XX:G1HeapRegionSize=8M
  • 12GB - 28GB Arası: -XX:G1HeapRegionSize=16M
  • 32GB ve Üstü: -XX:G1HeapRegionSize=32M

4. Yazılımsal ve Sistemsel Katmanlar

Java Sürümü ve Dağıtımı

Daima Java 21 (LTS) kullanılması önerilir. Dağıtım olarak ise standart Oracle Java yerine aşağıdaki performans odaklı sürümler tercih edilmelidir:

  • GraalVM: Gelişmiş JIT derleyicisi sayesinde işlemci yükünü optimize eder.
  • Eclipse Temurin (Adoptium): En stabil ve Minecraft sunucularıyla en uyumlu açık kaynak dağıtımdır.

İşletim Sistemi (Linux) Ayarları

Java flagleri kadar, üzerinde çalıştığı sistem de önemlidir. Linux tabanlı sunucularda "Huge Pages" özelliğini aktif etmek, Java'nın belleğe erişim hızını artırabilir.

Swap (Sanal Bellek) Tehlikesi

Eğer sunucu RAM'i yetmezse işletim sistemi diski (Swap) RAM olarak kullanmaya başlar. Bu durumda TPS doğrudan 20'den 5-10 seviyelerine düşer. RAM miktarını ayarlarken işletim sistemine (VDS kullanıyorsanız Linux için en az 1-2 GB) mutlaka pay bırakın.


5. Kritik Kontrol Listesi

  1. Sunucu çekirdeği olarak Purpur veya Pufferfish gibi Paper forklarını kullanıyor musunuz? (Bu çekirdekler bellek yönetimini ek flaglerle destekler).
  2. Eklentileriniz (Pluginler) arasında /gc komutuyla bellek boşaltmaya çalışan eski sistemler var mı? Varsa bu komutları kullanmayı bırakın; G1GC bu işlemi zaten otomatik ve daha verimli yapar.
  3. Blogger veya web tabanlı bir panel kullanıyorsanız, nogui parametresinin ekli olduğundan emin olun; görsel panel RAM tüketimini %5-10 artırır.

Bu rehber, teknik Minecraft topluluklarının en güncel verileri ve JVM benchmark sonuçları baz alınarak güncellenmiştir.