Minecraft szerver késés és alacsony TPS diagnosztizálása

Hogyan működik a Minecraft (Mi okozza a késést?)

A késést okozó okok megértésének kulcsa a Minecraft működésének megértése. A Minecraft szerverszoftverek mindegyike hasonló ügyben működik, egyetlen kulcsproblémával: nincs többszálas vagy időzítési korlát a fő játékhurokra. Amikor a kiszolgáló a tic-re lép, végigfut minden TileEntity frissítésen, entitásfrissítésen, blokkfrissítésen, eseményen és egyéb folyamaton, amíg meg nem történik. Mindez egy szálon történik, és a következő ciklus nem indulhat el, amíg az aktuális be nem fejeződik. A világ nem frissül, a játékosok nem fognak mozogni, és az entitások a helyükön maradnak. Ideális esetben egy tic legfeljebb 50 ms-ot vesz igénybe a 20 tic per másodperc (TPS) fenntartásához. Ez 18 TPS esetén akár 55,55 ms-ig is elmegy minimális problémákkal. Bármilyen ennél alacsonyabb, akkor késést fog látni.

A lemaradás tipikus okai

Sok dolog okozhat késést, de ezek közül néhány a legvalószínűbb hibás a legtöbb szerver számára.

  • Fájlhasználat : Minden olyan bővítmény, amely folyamatosan olvas a lejátszó fájljaiból, különösen olyan események esetén, mint például mozgás, sérülés vagy interakció. Néhány példa lehet néhány PVP flag vagy Glow plugin, amelyek folyamatosan olvasnak a lejátszó fájljaiból.
  • Lapos fájlok adatbázisként : Ha olyan beépülő moduljai vannak, amelyek nagy fájlokat használnak az adott fájlon keresztül vagy a memóriában ismétlődő adatok nyomon követésére, a tárolás módjától függően, ez hosszú ideig tart. Sok beépülő modul ezt teszi, és nem tesz óvintézkedéseket az ellen, hogy amikor az adatbázisok felduzzadnak, a feldolgozási idő hogyan befolyásolja a szerverek működését. Ezt gyakran látni fogja, amikor nagy MagicSpells-konfigurációkat tölt be, vagy olyan engedélyrendszereket használ, amelyek YAML-t használnak megfelelő adatbázisok, például PEX és GroupManager helyett.
  • Túl sok művelet : Ha egy beépülő modul túl sok entitást hoz létre, vagy összetett feladatokat próbál végrehajtani eseményeken, például mozgáson, akkor késést fog látni. Még ha minden egyes futtatás kevesebb, mint 1 ms-ot vesz igénybe, ha egy eseményt másodpercenként 20 000-szor dolgoz fel, az exponenciális lesz. Ezt okozhatják a világszerkesztő beépülő modulok, például a VoxelSniper és a WorldEdit; vagy védelmi bővítmények, például az Anti Cheats és a World Protections.
  • Túl sok darab van betöltve : Egy darab van 16*16*256. Lehet, hogy ez nem hangzik soknak, de kiszorozva azt jelenti, hogy darabonként 65 536 blokk van. A konfigurációtól függően minden játékos több mint 200 darabot helyezhet köré. Ez több mint 13 107 200 blokk. Ez sok memóriát foglal el. Továbbá, ha ezeknek akár 1%-a is TileEntities, akkor 131 072 TileEntity van betöltve, amelyeknek minden tic-t frissíteniük kell. A modok a TileEntities lassú feldolgozási idejéről híresek.
  • Cascading WorldGen : Ez az, amikor egy beépülő modul vagy mod struktúrákat generál a neki adott darabon kívül. Ez azt okozza, hogy a következő darab betöltődik, generálódik, majd újra elindítja ezt az egészet, ha a struktúrák is elkezdenek túlcsordulni a következő darabba. Ez rossz tervezés az alkotók részéről, és minden ilyen beépülő modult vagy modot azonnal el kell távolítani.
  • Csempe szervezetek : See LagGoggles pontban.

A késés okának megtalálása manapság általában egyszerű eljárás, mivel a legtöbb Minecraft szerverszoftver profilkészítő eszközökkel készül.

Időzítési jelentések a Spigot/PaperSpigot számára

Ha részletes időzítési jelentést szeretne kapni, használja a következő parancsot.

/timings on

Várjon néhány percet, és hagyja, hogy az időzítések lefussanak. Egy idő után hozza létre a jelentést.

/timings paste

Ez egy linket ad egy webhelyre, ahol a jelentés szép lebontása található, és egyszerű lehetőségeket kínál az összes kapott adat átvizsgálására. Ezek olvasásáról a Spigot időzítő wikijében tudhat meg többet .

Érdemes utólag kikapcsolni az időzítést, mivel nem szeretné, hogy a szemét adatok eltömítsék a következő olvasást, és az időzítések további időt adnak a ticnek.

/timings off

Időzítési jelentések a Sponge számára

Ha részletes időzítési jelentést szeretne kapni, használja a következő parancsot.

/sponge timings on

Várjon néhány percet, és hagyja, hogy az időzítések lefussanak. Egy idő után hozza létre a jelentést.

/sponge timings report

Ez egy linket ad egy webhelyre, ahol a jelentés szép lebontása található, és egyszerű lehetőségeket kínál az összes kapott adat átvizsgálására. Mivel a Sponge időzítési rendszere a Spigot rendszerén alapul, többet megtudhat arról, hogyan kell ezeket olvasni a Spigot időzítési wikijében .

Érdemes utólag kikapcsolni az időzítést, mivel nem szeretné, hogy a szemét adatok eltömítsék a következő olvasást, és az időzítések további időt adnak a ticnek.

/sponge timings off

Az időzítéseket is visszaállíthatja.

/sponge timings reset

Lépések a késés csökkentésére

  • A Minecraft elindításához használjon megfelelő argumentumokat a szkriptfájlhoz. További információ a megfelelő Java argumentumokról itt
  • Használjon LuckPerms-t vagy olyan engedélykezelőt, amely megfelelő adatbázist használ egy sima fájl helyett
  • Kerülje el a darabos rakodókat
  • Távolítson el mindent, ami lépcsőzetes világgenerációt okoz
  • Korlátozza az Anti Cheat bővítményeket, hogy ne legyenek túlbuzgók
  • Korlátozza a játékosok látótávolságát server.properties
  • Távolítsa el az ellenséges csőcseléket meghatározott idő után
  • Indítsa újra a szervert naponta, hogy megtisztítsa a Java szivárgását
  • SOHA ne töltse újra a szervert, mert ez szivárgást és egyéb problémákat okoz
  • Használja a beépülő modulok FastAsync verzióit, például a WorldEdit és a VoxelSniper
  • Korlátozza a világ méretét, hogy ne jöjjön létre folyamatosan új darabok
  • Korlátozza a használt bővítmények számát. Nem minden beépülő modul van jól felépített, és minél több van, annál több problémával fog találkozni

LagGoggles

A módosított szerverek késésének nagy része a csempe entitásokból származik. Ezek a blokkokhoz létrehozott entitások, amelyek a blokk funkcióinak és eseményeinek feldolgozására szolgálnak. Ha ezek túl sokáig tartanak, vagy túl sok van, az megnövelheti a tic-enkénti időt, és csökkentheti a teljes szerver TPS-t. Ezeket a problémákat a LagGoggles nevű mod segítségével lehet megjeleníteni. Ezt a modot letöltheti a CurseForce webhelyről .


Tekkit Classic kiszolgáló beállítása Ubuntu 16.10 rendszeren

Tekkit Classic kiszolgáló beállítása Ubuntu 16.10 rendszeren

Más rendszert használ? Mi az a Tekkit Classic? A Tekkit Classic egy modpack ahhoz a játékhoz, amelyet mindenki ismer és szeret; Minecraft. Tartalmaz néhányat a ver

Állítsa be a 7 Days to Die szervert az Ubuntu 14-en

Állítsa be a 7 Days to Die szervert az Ubuntu 14-en

Ebből az útmutatóból megtudhatja, hogyan állíthatja be saját 7 Days to Die szerverét (7D2D) az Ubuntun. Felhívjuk figyelmét, hogy ez a játék még korai hozzáférésű, és hogy th

Half Life 2 szerver beállítása CentOS 6 rendszeren

Half Life 2 szerver beállítása CentOS 6 rendszeren

Ez az oktatóanyag a Half Life 2 játékszerver CentOS 6 rendszerre történő telepítésének folyamatát ismerteti. 1. lépés: Az előfeltételek telepítése Az ou

Counter-Strike Global Offensive Server Launcher Ubuntu

Counter-Strike Global Offensive Server Launcher Ubuntu

Azok, akiknek van tapasztalatuk a dedikált CS:GO (Counter-Strike: Global Offensive) beállításában, tudják, hogy a parancssori felület kezelésének folyamata

A Counter Strike beállítása: Forrás Debianon

A Counter Strike beállítása: Forrás Debianon

Ebben az útmutatóban egy Counter Strike: Source játékszervert fogunk beállítani a Debian 7 rendszeren. Ezeket a parancsokat a Debian 7 rendszeren teszteltük, de működniük kell

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be egy Unturned 2.2.5 szervert Debian 8-at futtató Vultr VPS-en. Megjegyzés: Ez az Unturned szerkesztett változata, amely nem

A Cuberite telepítése CentOS 6 vagy 7 kiszolgálóra

A Cuberite telepítése CentOS 6 vagy 7 kiszolgálóra

Bevezetés Mi az a Cuberite? A Cuberite egy méretezhető, nyílt forráskódú Minecraft szerver implementáció, amely C++ nyelven íródott. Könnyen használható plugija van

Teamspeak telepítése CentOS 7 rendszeren

Teamspeak telepítése CentOS 7 rendszeren

A Teamspeak egy VOIP szerver, amely csapatok/több ember kommunikációjára használható. Viszonylag könnyű és biztonságos, mivel a frissítések megjelennek

A SteamCMD telepítése a VPS-re

A SteamCMD telepítése a VPS-re

Ebben az oktatóanyagban telepítjük a SteamCMD-t. A SteamCMD segítségével számos Steam játékszerver letölthető és telepíthető, mint például a Counter-Strike: Global Offensiv

Teamspeak 3 szerver indítása CentOS 6.4 rendszeren

Teamspeak 3 szerver indítása CentOS 6.4 rendszeren

Futtassa a következő parancsokat a Teamspeak 3 kiszolgáló telepítéséhez. # Biztonságos Iptables iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -

A Left 4 Dead Server telepítése CentOS 7 rendszeren

A Left 4 Dead Server telepítése CentOS 7 rendszeren

Ebben az útmutatóban elmagyarázom, hogyan kell telepíteni és konfigurálni egy L4D szervert CentOS 7 rendszeren. A Left 4 Dead telepítése Mielőtt elkezdené, meg kell győződnünk arról, hogy

Minecraft szerver telepítése Ubuntu 14.04-re

Minecraft szerver telepítése Ubuntu 14.04-re

Más rendszert használ? Ebben a cikkben egy Minecraft szervert fogunk telepíteni egy Ubuntura. Győződjön meg arról, hogy olyan felhasználóval jelentkezett be, aki nem

Az SA-MP San Andreas Multiplayer telepítése CentOS 7 rendszeren

Az SA-MP San Andreas Multiplayer telepítése CentOS 7 rendszeren

Ebből az oktatóanyagból megtudhatja, hogyan állíthat be SA-MP (San Andreas Multiplayer) szervert CentOS 7 rendszeren.

A TeeWorlds szerver beállítása

A TeeWorlds szerver beállítása

A TeeWorlds egy ingyenes és nyílt forráskódú online többszereplős lövöldözős játék. Ebben az oktatóanyagban elmagyarázom, hogyan lehet TeeWorlds szervert létrehozni. Ezek a lépések voltak

Futtassa saját Arma 3 szerverét Ubuntu 14-en

Futtassa saját Arma 3 szerverét Ubuntu 14-en

Áttekintés Ez az útmutató az Arma 3 szerver telepítését és üzemeltetését ismerteti a SteamCMD és a képernyő használatával. További információkért a th

Tekkit Classic Server telepítése CentOS 6/7 rendszeren

Tekkit Classic Server telepítése CentOS 6/7 rendszeren

Más rendszert használ? Ebben az oktatóanyagban hozzon létre egy Tekkit Classic szervert. A Tekkit egy másik népszerű modpack a Minecraft számára. Az összeg miatt

A Glowstone (Minecraft) telepítése CentOS 7 kiszolgálóra

A Glowstone (Minecraft) telepítése CentOS 7 kiszolgálóra

Más rendszert használ? Bevezetés A Glowstone kétségtelenül a leginkább optimalizált szerver a Minecraft számára. A szoftver alacsony memóriahasználattal és -használattal büszkélkedhet

Az Unturned telepítése Linuxra

Az Unturned telepítése Linuxra

Más rendszert használ? Bevezetés Ebben az útmutatóban megtudhatja, hogyan kell beállítani és telepíteni egy Unturned szervert Linux rendszeren. Az Unturned népszerű túlélés

JC2:MP játékszerver beállítása Debianon

JC2:MP játékszerver beállítása Debianon

Ebben az útmutatóban egy Just Cause 2: Multiplayer Linux szervert állítunk be. Ezeket a parancsokat Debian 7 x64-en tesztelték, de működniük kell a th-en is

Telepítsen egy Minecraft szervert a Fedora 26-ra

Telepítsen egy Minecraft szervert a Fedora 26-ra

Más rendszert használ? Ebben az oktatóanyagban végigvezetem Önt a Minecraft szerver beállításán egy nagy teljesítményű SSD VPS-en a Vultr-nál. Meg fogod tanulni ho

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket