Lag auf einem Minecraft Server verringern
Ein Server, der zäh wird, ist selten ein Rätsel. Es sind fast immer dieselben fünf Stellen, und vier davon kosten kein Geld.
Was die Tickrate ist
TPS heißt Ticks pro Sekunde und ist der Herzschlag des Servers. Alles, was die Welt tut, also Bewegung von Mobs, Blockänderungen, Redstone und Wachstum, passiert einmal pro Tick, und das Ziel sind 20 davon in der Sekunde. Damit hat jeder Tick 50 Millisekunden Zeit.
Geht er darüber, fängt der nächste zu spät an, die Tickrate fällt, und die ganze Welt wird zusammen langsamer. Genau deshalb schmelzen Öfen bei Lag langsamer, statt dass das Spiel abgehackt aussieht. Tippe /tps in die Konsole, um es zu sehen.
| TPS | Ein Tick dauert | Wie es sich anfühlt |
|---|---|---|
| 20 TPS | 50 ms | Normal. Hier gibt es nichts zu reparieren. |
| 18 TPS | 55.6 ms | Kaum zu sehen. Das Timing von Redstone fängt an zu wandern. |
| 15 TPS | 66.7 ms | Mobs stocken, Trichter kommen nicht hinterher, Farmen liefern weniger. |
| 10 TPS | 100 ms | Halbe Geschwindigkeit. Öfen, Wachstum und der Tageslauf brauchen doppelt so lange. |
| 5 TPS | 200 ms | Unspielbar. Blöcke tauchen wieder auf, nachdem du sie abgebaut hast. |
Drei Arten von Lag
Drei verschiedene Probleme heißen alle Lag, und nur eines davon ist deines. Sie auseinanderzuhalten erspart dir, einen Server zu verbessern, der nie der langsame Teil war.
| Art | Wo es passiert | Was du dagegen tun kannst |
|---|---|---|
| Auf dem Server | Auf der Maschine. Das ist es, was die Tickrate misst. | Alles andere auf dieser Seite. Entities, das Laden von Chunks, Plugins und Redstone landen hier. |
| Beim Spieler | Auf dem eigenen Rechner. Zeigt sich als niedrige Bildrate und Ruckeln, nicht als langsamer Ofen. | Direkt nichts, aber eine kleinere Sichtweite schickt weniger Chunks und nimmt auch ihm Last ab. |
| Im Netz, also Ping | Zwischen beiden. Entfernung und Wegführung, keine Rechenarbeit. | Nimm eine Region in der Nähe deiner Spieler. Kein Prozessor der Welt verkürzt einen Ozean. |
Erzeuge deine Chunks im Voraus
Gelände zu erzeugen ist das Teuerste, was ein Server tut. Biome, Höhlen, Bauwerke, Erze und Licht werden alle beim ersten Mal berechnet, wenn jemand dorthin läuft, und vier Spieler auf Pferden in vier Richtungen bringen einen gesunden Server allein auf eine einstellige Tickrate. Das im Voraus zu tun, während niemand da ist, verschiebt diese Kosten auf einen Moment, in dem sie nicht stören.
Chunky installieren
Es ist eine gewöhnliche Plugin-Datei im Ordner plugins und läuft auf jeder unserer Serversoftware mit Bukkit-Schnittstelle.
Setze den Radius, den du wirklich willst
Nimm dieselbe Zahl wie deine Weltgrenze, in Blöcken. Weit über die Grenze hinaus zu erzeugen sind Stunden Rechenzeit für Gelände, auf dem nie jemand stehen wird.
/chunky radius 5000Starte es auf einem leeren Server
Das Erzeugen selbst ist schwer, lass es also über Nacht laufen oder bevor du die Adresse herausgibst. Wird es unterbrochen, macht es danach weiter.
/chunky start
Chunky ist eine gewöhnliche Plugin-Datei. Wie du eine einspielst, steht im Leitfaden zu Plugins.
Sichtweite und Simulationsweite senken
Die Sichtweite ist ein Radius, die Kosten steigen also im Quadrat und nicht gleichmäßig. Unser eigenes Panel nimmt 2 bis 32, und über diese Spanne geht ein einzelner Spieler von 25 auf 4.225 Chunks. Nimm die Zahl der Leute mal, und du siehst, warum das der erste Regler ist, den man anfasst. Von 10 auf 8 zu gehen merkt praktisch niemand und nimmt dem Server rund ein Drittel der Chunks ab.
| Sichtweite | Chunks je Spieler | Gegenüber 10 |
|---|---|---|
| 2 ChunksDer kleinste Wert, den unser Panel zulässt | 25 | 6% |
| 4 Chunks | 81 | 18% |
| 6 Chunks | 169 | 38% |
| 8 Chunks | 289 | 66% |
| 10 Chunks | 441 | 100% |
| 12 Chunks | 625 | 142% |
| 16 Chunks | 1.089 | 247% |
| 32 ChunksDer größte Wert, den unser Panel zulässt | 4.225 | 958% |
Die Simulationsweite ist die, die sich auszahlt. Die Sichtweite entscheidet, was ein Spieler sehen kann; die Simulationsweite entscheidet, wie weit die Welt weiterläuft, und das kostet die Ticks. Sie ein paar Chunks unter die Sichtweite zu setzen ist die übliche Antwort. Das hier sind die 5 Einstellungen zur Leistung, die unser Panel dir zeigt.
| Einstellung | Spanne | Was sie tut |
|---|---|---|
| View distance (chunks)view-distance | 2 bis 32 | Wie weit Spieler sehen. Kleiner ist leichter für Prozessor und Speicher. |
| Simulation distance (chunks)simulation-distance | 2 bis 32 | Wie weit die Welt weiterläuft. Der größte einzelne Hebel für die Leistung. |
| Entity range (%)entity-broadcast-range-percentage | 10 bis 500 | Wie weit Entities an die Spieler geschickt werden. Kleiner senkt die Last im Netz. |
| Watchdog (ms)max-tick-time | 1000 bis 600000 | Wie lange ein Tick dauern darf, bevor sich der Server für hängend hält. Unter 60000 startet er sich bei schwerem Lag selbst neu. |
| Synchronous chunk writessync-chunk-writes | An oder aus | Das auszuschalten ist auf geteiltem Speicher meistens schneller. |
Entities ausdünnen
Jeder Mob, jedes fallengelassene Item, jeder Rahmen, jeder Rüstungsständer und jede Lore ist eine Entity, und der Server geht in jedem Tick die ganze Liste durch. Fünfhundert Hühner auf zehn Blöcken kosten mehr als fünfzig Spieler, die herumlaufen.
Paper kann das ausdünnen, ohne dass es jemand merkt: Reichweiten und Tickraten in paper-world-defaults.yml lassen entfernte Entities seltener ticken, und Obergrenzen in bukkit.yml deckeln, wie viele gleichzeitig existieren dürfen. Rahmen und Rüstungsständer in einem Bauwerk sind die heimlichen: Nichts tötet sie, und sie bewegen sich nie.
Redstone und Plugins
Eine Redstone-Änderung schlägt Wellen: Eine Änderung löst Blockaktualisierungen durch alles aus, was daran hängt, und eine schnelle Schaltung tut das hunderte Male pro Sekunde. Paper bringt eine andere Umsetzung von Redstone mit, die bei großen Schaltungen messbar günstiger ist, und die einzuschalten lohnt sich, bevor du anfängst, Bauweisen zu verbieten.
Die Anzahl der Plugins ist nicht die Zahl, auf die es ankommt. Fünfzehn gut gewählte schlagen vierzig, von denen sich die Hälfte überschneidet, aber ein einziges Plugin, das im Haupt-Thread Chunks durchsucht, schlägt sie alle beim Schaden. Steht in einer Messung ein Plugin oben, suche zuerst nach einer neueren Fassung, dann nach einer Einstellung, die den teuren Teil abschaltet, und danach nach etwas anderem, das dieselbe Aufgabe erledigt.
Mit Spark den Engpass finden
Alles bisher ist geraten, solange du nicht misst. Spark ist ein Profiler und sagt dir, wohin die Ticks gegangen sind: das Ticken der Entities, das Laden von Chunks, der Ereignisbehandler eines Plugins oder die Aufräumpausen. Starte ihn, während der Server wirklich kämpft, lass ihn ein paar Minuten laufen und stoppe ihn dann. Du bekommst eine Adresse mit der Aufschlüsselung.
/spark profiler start/spark profiler stopPaper ab 1.21 bringt Spark schon mit, auf den meisten unserer Server musst du also gar nichts installieren. Willst du es ohne Befehle, misst der Leistungscheck im Panel dasselbe in rund sieben Sekunden und schreibt dir die Zahl dazu.
Wann ein größeres Paket dran ist
Hast du deine Chunks vorab erzeugt, die Simulationsweite gesenkt, die Entities ausgedünnt und mit Spark gemessen, und der Durchschnitt über eine Minute hält die 20 immer noch nicht, dann ist die Maschine die Grenze und nicht die Einstellung. Den ganzen Tag über achtzig Prozent Speicher, oder Ausschläge beim Prozessor im normalen Spiel, sind das Signal.
| Paket | vCPU | Arbeitsspeicher | Speicher | |
|---|---|---|---|---|
| Mini | 2 vCPU | 4 GB | 40 GB NVMe | ansehen |
| Starter | 4 vCPU | 8 GB | 75 GB NVMe | ansehen |
| Standard | 6 vCPU | 12 GB | 100 GB NVMe | ansehen |
| Premium | 8 vCPU | 24 GB | 200 GB NVMe | ansehen |
| Ultimate | 12 vCPU | 48 GB | 250 GB NVMe | ansehen |
| Enterprise | 16 vCPU | 64 GB | 300 GB NVMe | ansehen |
| Dedicated | 18 vCPU | 96 GB | 350 GB NVMe | ansehen |
Welche Größe zu welcher Art Server passt, steht im Leitfaden zum Arbeitsspeicher, und was bei jedem Paket dabei ist, steht bei den Leistungen.
Die Millisekunden je Tick, die Spanne der Sichtweite, die Felder im Einstellungsfenster und die Pakettabelle werden beim Bauen dieser Seite aus unseren eigenen Dateien gelesen.
Fragen, wenn der Server zäh wird
Wo sehe ich meine Tickrate?
Tippe /tps in die Konsole. Paper nennt drei Durchschnittswerte, über eine, fünf und fünfzehn Minuten, und der über eine Minute beantwortet die Frage, ob es gerade jetzt schlecht ist. Das Ziel sind 20.
Bekomme ich mit mehr Arbeitsspeicher mehr TPS?
Nur, wenn der Speicher wirklich die Grenze war. Läuft der Server dauerhaft über achtzig Prozent, dann ja. Fällt die Tickrate, während der Speicher ruhig bleibt, kostet dich etwas Rechenzeit, und dagegen hilft kein weiteres Gigabyte.
Wie viele Entities sind zu viele?
Eine feste Zahl gibt es nicht, aber Hunderte an einer Stelle sind fast immer der Grund. Der Server geht in jedem Tick die ganze Liste durch, deshalb kosten fünfhundert Hühner auf zehn Blöcken mehr als fünfzig Spieler, die herumlaufen.
Warum werden Trichter so oft genannt?
Weil jeder Trichter in jedem Tick nachsieht, ob etwas da ist, ob sich etwas bewegt oder nicht. Eine Sortieranlage aus zweihundert Trichtern läuft also den ganzen Tag zum vollen Preis, auch wenn niemand online ist.
Was mache ich, wenn nichts davon hilft?
Dann misst du, statt weiter zu raten. Spark sagt dir, wohin die Ticks gegangen sind, und wenn danach ein einzelnes Plugin oben steht, ist das deine Antwort. Steht die Maschine selbst oben, ist es Zeit für ein größeres Paket.
Pakete mit Luft nach oben
Mini4 GBab €6.99 pro Monat bei 24 Monaten Laufzeit
Starter8 GBab €8.79 pro Monat bei 24 Monaten Laufzeit
Standard12 GBab €13.59 pro Monat bei 24 Monaten LaufzeitAlle 21 Pakete in drei Editionen ansehenVier Fragen beantworten und die passende Größe bekommen
Jede Zahl auf dieser Seite wird beim Bauen der Seite aus unseren eigenen Dateien gelesen.



