EternalHittMan
Ağaç Yumruklayıcı
- En iyi cevaplar
- 0
Evet sunucu yeniden çöktü. Ve çökmeyi önerdiğiniz şekilde çözdüm. Fakat bir sorun var. Timings aldığım zaman "Sanal sunucuda kaç GB ram var ve siz sunucuya kaç GB ram verdiniz? Ayrıca "-XX:+UseG1GC" ibaresini kaldırırıp dener misiniz lütfen?
"UseG1GC" javanın alternatif garbage collectoru(Garbage First Garbage Collector açılımı)yani artık kullanılmayan objeleri hafızadan temizliyor ama standart collectordan ziyade bu garbage'ın çok olduğu alanlardan başlıyor ve daha sık temizlik yapıyor.Attığın link timings'in kendi sayfasına yönlendiriyor ve çıkan uyarı sitenin kendi tavsiyesi yani standart collector yerine g1gc'in serverlar için kendilerince daha uyumlu olduğunu söylüyor o yüzden uyarıda da onu değiştirmen gerektiğini söylüyor. Arada sırada olan tps düşüşleri, spike laglar genellikle bu garbage collectionlar yüzündendirEvet sunucu yeniden çöktü. Ve çökmeyi önerdiğiniz şekilde çözdüm. Fakat bir sorun var. Timings aldığım zaman "
✗ Wrong Garbage CollectorLinki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.
Switch Java flags to stop receiving lag spikes. " Şeklinde bi uyarı alıyorum. Arasıra sunucuda da ani tps düşüşü yaşanıyor. Galiba sebebi bu. Bunu nasıl çözerim ?
Bu sefer kesinlikle g1gc'den ondan eminim ama nedeni konusunda hiçbir fikrim yok.Bir java'ya bug reportta dene şansını çok hızlı dönüş yapmazlar ama yine de bir şey kaybetmezsin.Tekrar çöktü
Linki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.
Bence artık g1gc kullanmayı bırakayım. Bana startup flag önerir misiniz ?
Loglarda hata görmüyorum.
java -XX:+UnlockExperimentalVMOptions -d64 -server -Xms1M -Xmx8G -XX:-HeapDumpOnOutOfMemoryError -XX:SoftRefLRUPolicyMSPerMB=1000 -XX:-UseCompressedOops -XX:+TieredCompilation -XX:+UseLWPSynchronization -XX:+UseG1GC -XX:+UseBiasedLocking -XX:+UseFastAccessorMethods -XX:+UseStringDeduplication -XX:+ParallelRefProcEnabled -XX:+UseLargePagesInMetaspace -XX:+AggressiveOpts -XX:+DisableExplicitGC -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Duser.language=EN -Duser.country=US -Dpaper.playerconnection.keepalive=120 -Dlog4j.skipJansi=true -Dusing.aikars.flags=true -Daikars.new.flags=true -jar server.jar -nojline -o false --log-strip-color --log-append=false nogui
Edit. Asağıdaki gibi bir kodu direk kullanabilirsin g1 yerine sorun çıkarmaması lazım üstteki java cms linkinde de nasıl özelleştirebileceğini anlatıyor çok gerekli değil temel halinin de optimizasyonu fena değil ama sorun çıkartmaz çalışırsa eğer orayı da inceleyebilirsinkaybedecek bişeyim yok onu da deneyelim xd G1GC flagı yerine CMS flagı yazsam sorun çıkarır mı ?
Kullandığım başlatma kodu
Kod:java -XX:+UnlockExperimentalVMOptions -d64 -server -Xms1M -Xmx8G -XX:-HeapDumpOnOutOfMemoryError -XX:SoftRefLRUPolicyMSPerMB=1000 -XX:-UseCompressedOops -XX:+TieredCompilation -XX:+UseLWPSynchronization -XX:+UseG1GC -XX:+UseBiasedLocking -XX:+UseFastAccessorMethods -XX:+UseStringDeduplication -XX:+ParallelRefProcEnabled -XX:+UseLargePagesInMetaspace -XX:+AggressiveOpts -XX:+DisableExplicitGC -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Dsun.stderr.encoding=UTF-8 -Dsun.stdout.encoding=UTF-8 -Duser.language=EN -Duser.country=US -Dpaper.playerconnection.keepalive=120 -Dlog4j.skipJansi=true -Dusing.aikars.flags=true -Daikars.new.flags=true -jar server.jar -nojline -o false --log-strip-color --log-append=false nogui
-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:+PrintGCDetails -XX:+PrintGCTimeStamps