Sunucu Başlatıcı Oluşturucu

Minecraft sunucunuz için optimize edilmiş başlatma kodları oluşturun.

Temel Ayarlar

JVM Başlatma Seçenekleri (Flags)

-XX:+UseG1GC
G1 Garbage Collector kullanır. Minecraft sunucuları için en optimize çöp toplayıcıdır.
-XX:+UseZGC
ZGC kullanır. Çok düşük gecikme süreleri sağlar (Java 15+ gerekir). Diğer GC'ler ile aynı anda seçmeyin.
-XX:+UseShenandoahGC
Shenandoah GC kullanır. Ultra düşük duraklama süreleri hedefler. Diğer GC'ler ile aynı anda seçmeyin.
-XX:+UseParallelGC
Parallel GC kullanır. Yüksek işlem hacmi odaklıdır. Diğer GC'ler ile aynı anda seçmeyin.
-XX:+ParallelRefProcEnabled
Referans işlemeyi paralel hale getirir, GC duraklamalarını azaltır.
-XX:MaxGCPauseMillis=200
Maksimum GC duraklama süresini 200ms olarak hedefler. Lag spike'larını önlemeye yardımcı olur.
-XX:+UnlockExperimentalVMOptions
Deneysel VM seçeneklerinin kullanımını açar (bazı diğer flaglar için gereklidir).
-XX:+DisableExplicitGC
Pluginlerin veya sistemin manuel olarak GC çağırmasını engeller (System.gc() çağrılarını yoksayar).
-XX:+AlwaysPreTouch
Başlangıçta tüm RAM'i işletim sisteminden ayırır. Başlangıç yavaşlar ama çalışma zamanı performansı artar.
-XX:G1NewSizePercent=30
Yeni nesil nesneler için ayrılan minimum heap yüzdesi (%30).
-XX:G1MaxNewSizePercent=40
Yeni nesil nesneler için ayrılan maksimum heap yüzdesi (%40).
-XX:G1HeapRegionSize=8M
Heap bölge boyutunu 8MB olarak sabitler.
-XX:ReserveCopyMemoryForCompiler
JIT derleyicisi için bellek ayırır.
-XX:G1HeapWastePercent=5
Boşa harcanan heap yüzdesini %5 ile sınırlar.
-XX:G1MixedGCCountTarget=4
Karma GC döngüsü hedefini 4 olarak ayarlar.
-XX:InitiatingHeapOccupancyPercent=15
Heap doluluğu %15'e ulaştığında GC işaretlemeyi başlatır.
-XX:G1MixedGCLiveThresholdPercent=90
Karma GC için canlı nesne eşiğini %90 yapar.
-XX:G1RSetUpdatingPauseTimePercent=5
RSet güncelleme süresini toplam sürenin %5'i ile sınırlar.
-XX:SurvivorRatio=32
Survivor alanlarının oranını ayarlar.
-XX:+PerfDisableSharedMem
Dosya sistemi G/Ç işlemlerinin GC'yi duraklatmasını engeller (Linux/Disk performansı için önemlidir).
-XX:MaxTenuringThreshold=1
Nesnelerin eski nesile (Old Gen) taşınma eşiğini 1 yapar.
-XX:+UseStringDeduplication
Tekrarlanan metinleri (String) birleştirerek RAM kullanımını azaltır.
-Dfile.encoding=UTF-8
Karakter kodlamasını UTF-8 olarak ayarlar. Türkçe karakter sorunlarını çözer.
-Dsun.rmi.dgc.server.gcInterval=2147483646
RMI çöp toplama sıklığını azaltarak performansı artırır.
-Dlog4j2.formatMsgNoLookups=true
Log4j güvenlik açığına (Log4Shell) karşı koruma sağlar (eski sürümler için).
-Djava.net.preferIPv4Stack=true
IPv6 yerine IPv4 kullanımını zorlar. Bağlantı sorunlarını çözebilir.
-XX:+UseCompressedOops
64-bit sistemlerde 32GB altı RAM için bellek işaretçilerini sıkıştırır (Performans artırır).
-XX:TargetSurvivorRatio=90
Survivor alanının hedeflenen doluluk oranını %90 yapar.
-XX:G1ReservePercent=20
Heap belleğin %20'sini ani dolumlar için rezerve eder (Out of Memory hatasını önler).
-Dterminal.ansi=true
Konsol çıktısında renk kodlarını (ANSI) destekler.
-Dterminal.jline=false
Gelişmiş konsol girişini (JLine) kapatır. Bazı yönetim panelleri için gereklidir.
-XX:+UseLargePages
İşletim sistemi desteği varsa büyük bellek sayfalarını kullanır (Performans artırır ama OS ayarı gerektirir).
-XX:+UseNUMA
Çok işlemcili sunucularda bellek yönetimini optimize eder.
-XX:+UseTransparentHugePages
128GB üzeri RAM kullanımı için önerilir (Transparent Huge Pages).
Windows (baslat.bat)
Linux / macOS (start.sh)