• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Geladene Chunks

LiveToPlay

Minecrafter
Registriert
10 Januar 2014
Beiträge
26
Diamanten
1
Guten Tag,
Ich habe mal eine frage. Wir lassen als Server/Java Version Papermc laufen. Wenn wir den Server
starten sind sofort 800 Chunks in der Normalen Welt geladen und in der Nether/End je 500 Chunks. Schauen tuh
ich das ganze mit Essentails per /mem befehl. Ist das normal ? Ich kann mir das nicht vorstellen wenn bei
uns wenn 30 Leute Online sind sind 8000 Chunks geladen was extrem viel ist. Kann man da gegen was machen?

Freue mich über eine schnelle Antwort.

MfG LTP
 

Malfrador

Threadripper
Registriert
16 Juni 2013
Beiträge
1.473
Diamanten
396
Minecraft
Malfrador
8000 Chunks sind absolut nicht viel. Mit Sichtweite 10 (Standard für Server) lädt jeder Spieler 441 Chunks. Würde jeder eurer 30 Spieler an einer anderen Stelle stehen - was realistisch nicht der Fall ist, z.B. sind oft am Spawn mehrere Spieler in den gleichen Chunks - ergibt das 13.230 Chunks.

Stellen die 8000 Chunks denn ein Problem dar? Laggt der Server und es liegt daran? Timings sollten das relativ genau zeigen. Ich halte es persönlich eher für unwahrscheinlich, das es an den Chunks alleine liegt, wenn der Server laggt: Wir hatten auf unserer alten Hardware mit 2 GB Arbeitsspeicher für den Server 20-25 Spieler, mit ähnlicher Sichtweite und die RAM-Auslastung durch geladene Chunks war nie ein Problem.

Das nach einem Server-Start direkt Chunks geladen sind, ist ebenfalls völlig normal. Der Server lädt standardmäßig alle Chunks um den Spawn in jeder Welt. Dieses Verhalten lässt sich in der paper.yml deaktivieren - auch pro Welt, wie die meisten Optionen dort. Die entsprechende Option heißt wenig überraschend keep-spawn-loaded:. Solltest du Multiverse nutzen kannst du es auch dort pro Welt einstellen, die Option in der worlds.yml nennt sich keepspawninmemory:
Ich würde dir allerdings empfehlen, das für die Hauptwelt so zu lassen. Der Spawn ist normalerweise ein häufig besuchter Bereich und das Laden eines Chunks kostet deutlich mehr Leistung, als den Chunk einfach geladen zu lassen. Wenn der Spawn jedes mal geladen werden muss wenn sich jemand z.B. dorthin teleportiert, kann das Laggs verursachen.

Sollten nicht die Chunks selber, sondern z.B. Entities oder Redstone in den geladenen Chunks ein Problem sein (auch hier hilft wieder ein Blick in die Timings), empfehle ich die Paper-Option no-tick-view-distance. Mit dieser Option ist es möglich, Chunks an den Spieler zu senden ohne diese zu ticken - es spawnen dort also keine Mobs, es wachsen keine Farmen etc.
Stelle einfach die normale view-distance in den server.properties auf eine niedrigeren Wert (z.B. 5) und dann no-tick-view-distance auf einen höheren Wert (z.B. 10). Diese Option steht ab 1.15 zur Verfügung.


Generell: Der Essentials /mem-Befehl ist gerne mal etwas ungenau, ich würde allen Angaben dort misstrauisch begegnen. Inbesondere die TPS-Angabe gibt immer nur einen Moment wieder - und dann auch noch den Moment, in dem der aufwendige Befehl selbst ausgeführt wurde. Papers /tps und /tps mem (für Arbeitsspeicher, ab 1.16) sind hilfreicher, da sie einen Durchschnitt bilden. Für noch genauere Angaben kann ich ansonsten auch das kleine Plugin Spark empfehlen. Weder Paper-Befehl noch Spark geben dir natürlich geladene Chunks - das ist aber wie gesagt auch absolut keine aussagekräftige Information über die Performance eines Servers.
 

LiveToPlay

Minecrafter
Registriert
10 Januar 2014
Beiträge
26
Diamanten
1
Vielen Vielen dank für die ausführliche Antwort.

Wir haben halt das Problem das ab 27/30 Leuten die TPS anfängt zu fallen.
Habe schon viel versucht auch den Beitrag: https://www.spigotmc.org/threads/guide-server-optimization⚡.283181/
genau angeschaut und schon Einstellungen umgestellt leider weiß ich nun nicht mehr weiter was wir machen
können um die Performance zu verbessern und eine Stabile TPS zu bekommen. Aktuell ist die Paper Version
sogar so das wenn ich /timings an mache das die TPS selbst da fällt wenn viele spieler Online sind.

Der Root Server hat an sich eine Super Hardware.

AMD Ryzen 5 3600
64GB Ram
1TB MVMe SSD

Wäre gerne offen für weitere Vorschläge.

MfG LTP
 

Luki_xx

Schafhirte
Registriert
12 Juni 2019
Beiträge
107
Diamanten
378
Minecraft
Luki_xx
Aktuell ist die Paper Version
sogar so das wenn ich /timings an mache das die TPS selbst da fällt wenn viele spieler Online sind.

Während Timings an sind kann es zu Laggs kommen da diese den Server zusätzlich auslasten. Diese sind auch nicht dazu gedacht permanent zu laufen sondern über einen Vergleichsweise kurzen Zeitraum von 30min bis ein paar Stunden.

Ansonsten welche Version verwendet ihr und kannst du einen Link zu den Timings posten?
 

LiveToPlay

Minecrafter
Registriert
10 Januar 2014
Beiträge
26
Diamanten
1
Sollte man den einen Minecraft - Server wo Surival drauf sehr aktive gespielst wird
öffters neustarten oder reicht es nachts 1 mal (also alle 24 Stunden)?

Und was kann ich tatsächlich noch besser machen um die Performancezu verbessern.

Freue mich um jede hilfe
 

LiveToPlay

Minecrafter
Registriert
10 Januar 2014
Beiträge
26
Diamanten
1
Moin, also laut den Timings ist es auf jeden fall nicht ein Plugin da die alle mit
einer sehr niedrigen auslast arbeiten. Was genau kann man denn noch tun um einen Server
besser laufen zu lassen wenn so viele Spieler Online sind. Wir haben auch ein Plugin laufen
was verhindert das zu viele Tiere/Dorfbewohner zwingt dazu sich nicht mehr zu bewegen und
Freezt. Das hat auch schon was gebracht. Aber was genau ist das Problem das die
Performance so fällt wenn die Spielerzahl so 27/30 und höher wird.


03.08 13:07:46 [Server] INFO Reserved used RAM: 8,16 GiB
03.08 13:07:46 [Server] INFO Reserved free RAM: 7,84 GiB
03.08 13:07:46 [Server] INFO Reserved RAM: 16,00 GiB
03.08 13:07:46 [Server] INFO Max RAM: 32,00 GiB
03.08 13:07:46 [Server] INFO Uptime: 0 days 12 hours 6 minutes 47 seconds
03.08 13:07:46 [Server] INFO Arguments: [-Xmx32768M, -Xms16384M, -XX:+UseG1GC, -XX:+ParallelRefProcEnabled, -XX:MaxGCPauseMillis=200, -XX:+UnlockExperimentalVMOptions, -XX:+DisableExplicitGC, -XX:+AlwaysPreTouch, -XX:G1NewSizePercent=40, -XX:G1MaxNewSizePercent=50, -XX:G1HeapRegionSize=16M, -XX:G1ReservePercent=15, -XX:G1HeapWastePercent=5, -XX:G1MixedGCCountTarget=8, -XX:InitiatingHeapOccupancyPercent=20, -XX:G1MixedGCLiveThresholdPercent=90, -XX:G1RSetUp******PauseTimePercent=5, -XX:SurvivorRatio=32, -XX:MaxTenuringThreshold=1]
03.08 13:07:46 [Server] INFO Classpath: \paper_131.jar
03.08 13:07:46 [Server] INFO Threads: 92
03.08 13:07:46 [Server] INFO Peak threads: 122
03.08 13:07:46 [Server] INFO Daemon threads: 52
03.08 13:07:46 [Server] INFO Total started threads: 5096
03.08 13:07:46 [Server] INFO Process:
03.08 13:07:46 [Server] INFO Native library not found. Please download it to see this data
03.08 13:07:46 [Server] INFO User
03.08 13:07:46 [Server] INFO Timezone: Europe/Berlin
03.08 13:07:46 [Server] INFO Country: DE
03.08 13:07:46 [Server] INFO Language: de
03.08 13:07:46 [Server] INFO TPS: 13.218771
03.08 13:07:46 [Server] INFO Incoming Traffic: 195,61 MiB
03.08 13:07:46 [Server] INFO Outgoing Traffic: 5,31 GiB
03.08 13:07:46 [Server] INFO Loaded Plugins: 25/25
03.08 13:07:46 [Server] INFO Players: 35/50
03.08 13:07:48 [Server] INFO Entities: 5828/6752
03.08 13:07:48 [Server] INFO Tile Entities: 7024
03.08 13:07:48 [Server] INFO Loaded Chunks: 9351
03.08 13:07:48 [Server] INFO Worlds: 3
03.08 13:07:48 [Server] INFO World Size: 260,81 GiB
 
Zuletzt bearbeitet:

Malfrador

Threadripper
Registriert
16 Juni 2013
Beiträge
1.473
Diamanten
396
Minecraft
Malfrador
Schicke uns doch einfach mal einen Link zu Timings. Auch wenn du selbst dort nichts siehst - vielleicht sieht jemand anderes etwas.

Natürlich am besten mit vielen Spielern und über eine möglichst lange Zeit.
 

Malfrador

Threadripper
Registriert
16 Juni 2013
Beiträge
1.473
Diamanten
396
Minecraft
Malfrador
Sieben Minuten Timings sind nicht soo super genau, aber ich denke es sollte ausreichen.

Es wirkt auf mich nicht so, als gäbe es eine einzige Ursache, außer die Welt ist nicht vorgeneriert - dann ist das der Grund, warum es laggt. Abgesehen davon gibt es viele kleine Dinge. Ich denke das das beheben dieser kleinen Dinge die Performance schon einmal verbessern sollte, optimal wird es dadurch aber sicher nicht.

Generell:
  • An der Hardware liegt es sicherlich nicht. Der Prozessor sollte eine gute Single-Core-Performance haben und der RAM ist auch nicht ausgelastet - zumindest ist die Garbage Collection nicht sonderlich beschäftigt.
  • Ist die Welt komplett generiert? Ich bin mir nicht 100% sicher ob die Timings zwischen Chunk-Loading und Chunk-Generierung unterscheiden. Wenn sie nicht komplett generiert ist, tue dies. Das sollte einen wirklich riesigen Unterschied machen. Dazu kannst du ChunkMaster nutzen. ChunkMaster generiert deutlich besser und performanter die Chunks. Sinnvoll ist es natürlich, dann eine Weltgrenze festzulegen. Da kannst du entweder die Vanilla /worldborder nutzen (nur runde Welten oder ein entsprechendes Plugin.
Plugins:
  • Das Plugin "LagMonitor" reagiert auf jedes BlockPhysicsEvent. Das ist ein sehr häufiges Event und es verursacht Lag (etwa 4% pro Tick). Ich würde das Plugin entfernen. "LagCreator" wäre ein passenderer Name.
Bukkit:
  • spawn-limits.ambient: 1 - Fledermäuse (der einzige "ambient"-Mob) sind für 5% deines Ticks verantwortlich. Weniger Fledermäuse werden niemanden stören.
  • ticks-per.monster-spawns, ticks-per.ambient-spawns etc. : Hier ein wenig höher zu gehen schadet ebenfalls nicht. 3-4 sollte man kaum bei der Anzahl der Mobs merken. Da du mob-spawn-range: 4 hast, müssten die Mobs eh relativ gedrängt spawnen.
Spigot:
  • entity-activation-range für misc und animals kann ruhig niedriger, merkt man inGame nicht.
  • tick-inactive-villagers: false - inbesondere wenn sie eh nur rumstehen bei dir.
  • Wenn du tick-per.hopper-transfer auf einen höheren Wert stellst, solltest du hopper-amount anpassen. Dann werden mehrere Items auf einmal transferiert. Ansonsten werden Hopper seeeehr langsam und das ist nervig. Wir haben hopper-amount: 4 und ticks-per.hopper-transfer: 32
  • Ebenfalls sollte man natürlich dann ticks-per.hopper-check: 32 nutzen. Es bringt wenig, wenn die Hopper zwar nur einmal alle 32 Ticks ein Item transferieren, aber trotzdem jeden Tick schauen, ob es Items gibt.
Paper:
  • grass-spread-tick-rate: 4 (oder höher) dürfte die Zeit, die für Chunk Ticks - Blocks benötigt wird verringern
  • container-update-tick-rate: kann ruhig auf 2 oder 3. Man merkt bis dahin keinen Unterschied.
 
Oben