Minecraft Sunucu Lagı Nasıl Düzeltilir
Bu sayfada
"Sunucu lag yapıyor" üç farklı sorun anlamına gelebilir ve her birinin çözümü farklıdır. Geri çekilmeler ve kırdıktan sonra yeniden beliren bloklar, sunucunun geride kaldığını gösterir. Zıplayan ping ağdır. Herkes iyiyken tek bir kişide takılan görüntü, oyuncunun kendi bilgisayarıdır.
Bu rehber bunları nasıl ayırt edeceğinizi, sunucu lagını TPS, MSPT ve spark profiliyle nasıl doğru ölçeceğinizi, Paper'da hangi ayarların gerçekten işe yaradığını ve çözümün ne zaman gerçekten daha fazla RAM veya daha hızlı bir CPU olduğunu — ve ne zaman olmadığını — gösterir.
Sunucu lagı mı, ağ lagı mı, istemci lagı mı?
| Oyuncuların gördüğü | Nasıl doğrulanır | |
|---|---|---|
| Sunucu lagı | Herkes aynı anda: geri çekilme, donan moblar, geri gelen bloklar, geciken sohbet | 20'nin altında TPS veya 50 ms ve üzeri tick süreleri |
| Ağ lagı | Bir veya birkaç oyuncu: geri ışınlanma, isabet etmeyen vuruşlar | Bu oyuncularda yüksek ping, TPS ise 20'de kalıyor |
| İstemci lagı | Tek oyuncu: düşük kare hızı, dönerken takılma | O oyuncunun F3 ekranında düşük FPS, sunucu değerleri normal |
En hızlı test, herkesin aynı anda lag yaşayıp yaşamadığını sormaktır. Geride kalan bir sunucu tüm oyuncuları birlikte dondurur; kötü bir bağlantı veya yavaş bir bilgisayar yalnızca sahibini etkiler. Bu rehberin geri kalanı sunucu lagı hakkındadır.
Lag yavaş donanımdan mı? HytHost Minecraft sunucuları yüksek frekanslı Ryzen 7 ve Intel i9 CPU'larda çalışır — aylık €2.59'dan başlayan fiyatlarla.
Minecraft paketlerini görÖnce ölçün: TPS, MSPT ve spark
Bir Minecraft sunucusu saniyede 20 tick çalışır, yani her tick'in bitmek için 50 ms süresi vardır. Sunucunun nasıl başa çıktığını iki sayı anlatır:
- TPS (saniyedeki tick sayısı): 20, sunucunun yetiştiği anlamına gelir; 20'nin altında dünya yavaşlar.
- MSPT (tick başına milisaniye): her tick'in ne kadar sürdüğü. 50 ms'nin altında boş zaman vardır; 50 ms'nin üzerinde sunucu geride kalır.
Paper'da /tps ve /mspt vardır, ancak kendi belgeleri spark'ı gösterir; spark, 1.21'den beri Paper'a gömülüdür ve Fabric, Forge ve NeoForge için mod olarak mevcuttur:
/spark tps /spark health /spark ping
/spark tps son saniyeler ve dakikalardaki TPS'yi ve — daha faydalısı — tick sürelerini minimum, medyan, 95. yüzdelik ve maksimum olarak gösterir. /spark ping oyuncuların pingini gösterir; bu da "sunucu mu ağ mı" sorusunu çözer. /spark health buna CPU, bellek ve diski ekler.
Nedeni spark profiliyle bulun
Sayılar sunucunun lag yaptığını söyler; profil ise nedenini söyler. Lag yaşanırken bir profil başlatın ve birkaç dakika çalışmasına izin verin:
/spark profiler start --timeout 300
Bittiğinde spark, web görüntüleyicisine bir bağlantı paylaşır. Orada:
- Server thread'i açın — dünyayı çalıştıran ana iş parçacığı. Lag orada yaşar.
- En yüksek yüzdeye sahip girdileri genişletin: tick süresi oraya gider.
- Süreyi eklenti veya moda göre bölünmüş görmek için Sources görünümüne geçin. Ana iş parçacığının büyük bir kısmını alan tek bir eklenti veya mod genellikle cevabınızdır.
Gelip giden lag için iki araç daha yardımcı olur: /spark tickmonitor uzun süren her tick'i bildirir, /spark profiler start --only-ticks-over 100 ise yalnızca yavaş tick'leri kaydeder, böylece nadir bir sıçrama ortalamada kaybolmaz.
Önemli düzeltmeler, sırasıyla
1. Görüş ve simülasyon mesafesi
server.properties dosyasında simulation-distance, dünyanın oyunculardan ne kadar uzağa kadar gerçekten simüle edildiğini — moblar, ekinler, redstone — ve view-distance chunk'ların oyunculara ne kadar uzağa kadar gönderildiğini belirler. İkisinin de varsayılanı 10'dur. simulation-distance değerini düşürmek çoğu zaman en büyük tek kazançtır: 6 ile 8 arasını deneyin ve dünyanın hâlâ açık görünmesi için view-distance değerini biraz daha yüksek tutun. Bunlar resmi değerler değil, başlangıç noktalarıdır; öncesinde ve sonrasında ölçün.
2. Dünyayı önceden oluşturun
Yeni chunk oluşturmak, bir sunucunun yaptığı en pahalı işlerden biridir ve farklı yönlerde keşif yapan oyuncular bunu sürekli yaptırır. Chunky eklentisi (veya modu) haritayı önceden oluşturur:
chunky radius 5000 chunky start chunky pause chunky continue
Kimse oynamıyorken çalıştırın — devam eden bir ön oluşturma, doğası gereği sunucunun "Can't keep up" bildirmesine yol açar — ve oyuncular katıldığında duraklatın.
3. Varlıklar ve çiftlikler
Mob çiftlikleri, köylü salonları ve eşya yığınları en yaygın sürekli yük kaynaklarıdır. Paper ve Spigot'ta spigot.yml içindeki entity-activation-range, bir varlığın tam olarak tick'lenmesi için oyuncunun ne kadar yakın olması gerektiğini belirler; merge-radius ise yere düşen eşyaları ve deneyim kürelerini birleştirir. Mob çiftliklerini bir eklenti veya kuralla sınırlayın ve unutulmuş eşya yığınlarını temizleyin.
4. Huniler ve redstone
Büyük huni zincirleri pahalıdır. spigot.yml içinde ticks-per.hopper-transfer eşyaları ne sıklıkla taşıdıklarını belirler; Paper'ın hopper.disable-move-event ayarı onları çok hızlandırır — ama bu olaya dayanan koruma eklentilerini bozar. Redstone için Paper'ın misc.redstone-implementation: ALTERNATE_CURRENT ayarı redstone tozunun yol açtığı lagı büyük ölçüde azaltabilir, ancak tozun davranışını değiştirir; bu yüzden önce düzeneklerinizi test edin.
5. Profilinizdeki eklenti veya mod
spark profili tek bir eklentiyi veya modu gösteriyorsa çözüm odur: güncelleyin, ayarlarını hafifletin veya değiştirin. Ne kadar RAM eklerseniz ekleyin, kötü yazılmış bir eklenti hızlanmaz.
"TPS 20 ama hâlâ lag var"
Bu en kafa karıştırıcı durumdur ve neredeyse her zaman bir tick takılmasıdır: çoğu tick hızlıdır, ama arada bir tanesi yüzlerce milisaniye sürer. Ortalama 20'de kalır, yine de herkes donmayı hisseder.
/spark tpsiçinde maksimum tick süresini kontrol edin veya/spark tickmonitorçalıştırın. Birkaç yüz milisaniyelik sıçramalar bunu doğrular.- Olağan neden, ana iş parçacığında bekleyen bir eklentidir — internetten oyuncu skin'leri veya kafaları çekmek, bir webhook'a göndermek, güncelleme veya lisans kontrol etmek ya da bir dosyayı veya veritabanını eşzamanlı kaydetmek. Beklerken sunucu hiçbir şey yapmaz.
- Yalnızca hesaplamayı değil, beklemeyi de profilleyin. Normal bir profil CPU işini gösterir; bekleyen bir iş parçacığı boşta görünür. Beklemeler dahil zamanın nereye harcandığını yakalamak için
/spark profiler start --thread *kullanın ve Server thread üzerinde ağ veya dosya çağrılarını arayın.
Çözüm eklentidedir — eşzamansız çağrılar veya başka bir eklenti. Daha fazla RAM, daha hızlı bir CPU ya da daha iyi bir bağlantı yardımcı olmaz, çünkü sunucunun hiçbir şeyi eksik değildir; sadece bekliyordur.
Çözüm gerçekten RAM veya CPU olduğunda
Minecraft dünyayı tek bir ana iş parçacığında simüle eder. Bunun iki sonucu vardır:
- Çekirdek başına CPU hızı en çok önemli olandır. spark, Server thread'in normal dünya işleriyle — varlıklar, chunk'lar, blok tick'leri — meşgul olduğunu gösteriyorsa ve MSPT yüksekse, daha hızlı bir CPU daha fazla çekirdeğin yardım edemeyeceği yerde yardım eder.
- RAM yalnızca yetmediğinde işe yarar. İşaretler: sunucu bellek sınırına ulaştığında yeniden başlar veya profilde garbage collection duraklamaları baskındır. Dünyanın ve modların ihtiyacının ötesinde, daha fazla RAM tick hızına hiçbir katkı sağlamaz — ve aşırı büyük, ayarlanmamış bir heap garbage collection duraklamalarını uzatabilir.
Bir sunucunun ne kadar RAM'e ihtiyaç duyduğu ve garbage collection'ı kısa tutan başlatma bayrakları Minecraft sunucusu ne kadar RAM'e ihtiyaç duyar rehberinde anlatılıyor. Paper, Purpur ve diğerleri arasında seçim ise en iyi Minecraft sunucu yazılımı rehberinde.
Lag ve HytHost sunucunuz
Her HytHost Minecraft paketi aynı donanımda çalışır: 5.0 GHz'e kadar boost yapan Ryzen 7 ve Intel i9 CPU'lar, DDR4 bellek ve NVMe depolama — Minecraft'ın bağlı olduğu tek iş parçacığı hızı. spark zaten Paper'ın bir parçasıdır, bu yüzden konsoldan hemen profil alabilirsiniz.
Profiliniz sunucunun dünyası ve modları için gerçekten belleğinin yetmediğini gösteriyorsa, panelden bir üst pakete geçin; dünya yerinde kalır. Bir eklentiyi veya çiftliği gösteriyorsa, önce onu düzeltin — ücretsizdir ve her pakette işe yarar. Minecraft hosting'e veya aylık €11.65'dan başlayan premium Minecraft hosting sayfasındaki daha büyük paketlere göz atın.
Mod paketleri ve büyük dünyalar için daha fazla alan: 9 GB'lık MC Diamond aylık €11.65 ve yükseltmelerde dünyanız korunur.
Minecraft paketlerini görSıkça sorulan sorular
Oyunun hedefi olan 20 TPS. Her tick 50 ms'nin altında sürdüğü sürece (MSPT 50'nin altında) korunur. /spark tps içindeki 95. yüzdelik ve maksimum tick sürelerini de izleyin, çünkü 20'lik bir ortalama kısa donmaları gizleyebilir.
Yalnızca sunucunun belleği gerçekten yetmiyorsa; örneğin bellek sınırında yeniden başlıyorsa veya profilde garbage collection baskınsa. Lagın çoğu ana iş parçacığından gelir: varlıklar, chunk oluşturma, redstone veya yavaş bir eklenti; daha fazla RAM bunları hızlandırmaz.
Purpur, Paper üzerine kuruludur ve birçok ek yapılandırma seçeneği ile oynanış özelliği ekler; daha hızlı olduğuna dair resmi bir iddiası yoktur. Lag açısından sunucunuzdaki ayarlar ve eklentiler, ikisi arasındaki seçimden çok daha önemlidir.
Varsayılan değer hem view-distance hem simulation-distance için 10'dur. simulation-distance'ı yaklaşık 6 ile 8'e düşürmek genellikle en çok yardımı sağlar, çünkü sunucunun simüle ettiği alanı küçültür. Dünyanın hâlâ açık görünmesi için view-distance'ı biraz daha yüksek tutun ve öncesinde ve sonrasında ölçün.
Sunucu lag yaparken /spark profiler start --timeout 300 komutunu çalıştırın. spark ardından görüntüleyicisine bir bağlantı paylaşır: Server thread'i açın, en yüksek yüzdeye sahip girdileri genişletin ve zamanı hangi eklentinin veya modun aldığını görmek için Sources görünümünü kullanın.
Akıcı bir dünya için hızlı donanım
HytHost Minecraft hosting her paketi NVMe depolamalı, yüksek frekanslı Ryzen 7 ve Intel i9 CPU'larda çalıştırır ve yükseltmelerde dünyanız korunur — aylık €2.59'dan başlayan fiyatlarla.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hoursBu rehber işine yaradı mı?