Przejdź do treści głównej
⚔️ Valheim 1.0 już dostępny. 25% zniżki:DOOM25

Lagi w Minecraft wyjaśnione

Analizator spark

Wklej link z profilera spark. Czytamy raport i mówimy ci, co spowalnia twój serwer, po kolei, z dokładnym ustawieniem lub plikiem do zmiany.

Przykładowy raportNie masz jeszcze linku? Uruchom /spark profiler start --timeout 300, kiedy serwer laguje. spark wyśle link na czat po 5 minutach.
Przeciążony

Twój serwer działa z 58% pełnej prędkości. Największym kosztem są byty cow (1621) upchnięte w kilku chunkach.

Każdy tick trwa średnio 84 ms, a Minecraft ma tylko 50 ms. Zacznij od pierwszych poprawek poniżej.

AdvancedSlimePaper 26.2Java 25Gracze: 23Pluginy: 57Profilowano 4 min 29 s
TPS, ostatnie 5 min11,5 / 20
020 to pełna prędkość
Czas ticka (MSPT)84 ms mediana
budżet 50 msp95 120 ms, maks. 379 ms
Pamięć (heap)3,3 z 5 GB w użyciu
Pauzy GC średnio 13 msco 22 min
Załadowane byty4348
Cow 1826wszystkie inne typy

Co naprawić, po kolei

Krytyczne: 1Wysokie: 2Średnie: 4
Krytyczny

Byty cow (1621) upchnięte w chunkach: 8

Każdy byt jest w każdym ticku przesuwany i sprawdzany pod kątem kolizji, a upchnięte razem ciągle się ze sobą zderzają. Takie skupisko to jedna z najczęstszych przyczyn lagów.

chunk -4, -4: 334 cowchunk -4, -3: 332 cowchunk -4, -2: 319 cow+5 chunks
Jak to naprawić
  1. Idź do chunka -4, -4 (blok X -64, Z -64) w świecie ff7b7ff4… i przerzedź tam byty.
  2. Ogranicz farmę, żeby się nie odrodziła: limit rozmnażania, komora do zabijania albo plugin lub mod, który limituje moby na chunk.
Wysoki

Upuszczone przedmioty na ziemi: 511

Każdy przedmiot na ziemi jest liczony w ticku i próbuje połączyć się z sąsiednimi. Zwykle źródłem są przepełnione farmy.

item 511
Jak to naprawić
  1. Znajdź przepełnione farmy lub strumienie przedmiotów i daj im magazyn albo lej do lawy.
  2. Zamiast pluginu czyszczącego przedmioty użyj merge-radius i alt-item-despawn-rate z Papera.
Wysoki

ProtocolLib zużywa 20,9% każdego ticka

Pojedynczy plugin lub mod, który zabiera tyle głównego wątku, to pierwsze miejsce do sprawdzenia. Często chodzi o ustawienie w tym pluginie albo inny plugin, który go wywołuje.

ProtocolLib20.9% of Server thread56.2 s / 4.5 min
Jak to naprawić
  1. Zaktualizuj ProtocolLib do najnowszej wersji release.
  2. Otwórz raport w przeglądarce spark, rozwiń ProtocolLib i sprawdź, co go wywołuje i które z jego zadań jest wolne.
Średni

Osadnicy (325) działają, nawet gdy nikogo nie ma w pobliżu

Osadnicy to jedne z najdroższych mobów, a spigot.yml każe liczyć nieaktywnych osadników poza activation range.

tick-inactive-villagers: truevillager 325iron_golem 186
Jak to naprawić
  1. Ustaw tick-inactive-villagers na false. Hale handlowe i farmy żelaza blisko graczy dalej działają.
# spigot.yml
world-settings:
  default:
    entity-activation-range:
      tick-inactive-villagers: false   # było true
Średni

Ustawienia lejów i redstone

Leje sprawdzają przedmioty wiele razy na sekundę, a wagoniki z lejem w każdym ticku. Ustawienia Papera poniżej pomijają pracę, która niczego nie zmienia.

ignore-occluding-blocks: falsehopper_minecart 99tile entities 47972
Jak to naprawić
  1. Wprowadź wartości poniżej i zrestartuj.
  2. Bardzo techniczny redstone może zachowywać się trochę inaczej. Przetestuj najważniejsze mechanizmy.
# config/paper-world-defaults.yml
hopper:
  ignore-occluding-blocks: true   # było false
Średni

Ustawienia świata Papera do poprawy: 1

Te wartości w paper-world-defaults.yml kosztują czas ticka na obciążonym serwerze. Wartości poniżej pochodzą z poradnika optymalizacji YouHaveTrouble.

max-auto-save-chunks-per-tick: 24
Jak to naprawić
  1. Wprowadź wartości poniżej w config/paper-world-defaults.yml.
  2. Zrestartuj serwer, żeby zmiana zadziałała.
# config/paper-world-defaults.yml
chunks:
  max-auto-save-chunks-per-tick: 8   # było 24
Średni

Pluginy, które powodują więcej lagów, niż usuwają

Pluginy czyszczące przedmioty i stackujące moby w kółko skanują świat, a zestackowane moby sprawiają, że serwer spawnuje ich więcej. Menedżery pluginów, które przeładowują pluginy w trakcie działania, powodują wycieki pamięci.

PlugManX 3.1.0-Beta.2
Jak to naprawić
  1. Usuń PlugMan i zamiast przeładowywać pluginy, restartuj serwer.

Na co idzie czas ticka

Udział w głównym wątku serwera

Sam Minecraft byty, chunki, redstone
73,8%
ProtocolLib
20,9%
entity-limiter
3,6%
WorldGuard
1%
Intave
0,5%
Inne pluginy: 16
0,2%

Mierzone tak samo jak w widoku Sources w samym spark.

Najwięcej bytów

Wszystkie światy

  • Cow1826
  • Upuszczony przedmiot511
  • Villager325
  • Item frame285
  • Iron golem186
  • Skeleton147
  • Armor stand110
  • Sheep110

Już dobrze ustawione

Zaliczone testy: 5

  • view-distance 7 simulation-distance 4
  • -Xms równe -Xmx 5 GB
  • Flagi Aikara z G1GC
  • Zapas pamięci 35% heapu wolne
  • Brak ClearLag ani innych pluginów czyszczących przedmioty

Jak zrobić raport spark

spark jest darmowy i działa na Paper, Spigot, Purpur, Fabric, Forge i NeoForge.

  1. Zainstaluj spark

    Paper 1.21 i nowsze mają spark wbudowany. Na innych platformach wrzuć plik jar spark do plugins / mods i zrestartuj.

  2. Profiluj w trakcie lagów

    Uruchom /spark profiler start --timeout 300, kiedy gracze czują lagi, a nie na pustym serwerze.

  3. Wklej tutaj link

    Po 5 minutach spark wypisze link spark.lucko.me. Wklej go powyżej i kliknij Analizuj.

Często zadawane pytania Znajdź odpowiedzi na najczęściej zadawane pytania dotyczące hostingu serwerów .

Masz więcej pytań?