• Bitte beachte, dass wir eine Serverliste sind!
    Wenn du ein Problem auf einem Server hast (z.B. Entbannantrag, etc), dann ist das Forum hier der falsche Ort.
  • 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!

Java Welche CPU für einen Minecraft Server?

Minecraft Version
Java

JakkitDE

Minecrafter
Registriert
16 April 2016
Beiträge
16
Alter
26
Diamanten
250
Unser Server besteht seit vielen Jahren. Über die Jahre wurde Minecraft immer hungriger. Wir hosten mit 32GB RAM und einem Intel Core i5 4590, sowie auf SSDs. Aber bei 6 Spielern liegen die TPS schon bei 16-18. Trotz PaperMC. Minecraft 1.16.3 im übrigen.

Ich habe mal einen Timings Report erstellt: https://timings.aikar.co/?id=2bfb67233709498eb75db38052a23f5a

Vielleicht kann von euch jemand weiterhelfen. Zudem überlegen wir auf AMD Ryzen 5 3600, 64GB DDR4 RAM und SSD umzusteigen, wissen aber nicht, ob das überhaupt etwas helfen würde. Bei Kosten von 80€ inkl. Setup wollen wir uns dann doch nochmal umfangreicher informieren.

Wir betreiben den Server mit vielen Plugins (87): AdvancedPortals, AntiBlockUpdate*, AntiPhantoms, AntiSpawnerChange, AntiWorldFly, ArmorStandTool, AuctionsRecoded, BanManager*, BarAPI*, BentoBox, BetterAlias*, Blackjack, ChestCommands, ChestShop, Citizens, CobbleGen, ColoredAnvils*, CommandHook, CommandSigns, CommandsInCountdown, CoreProtect, CustomCrafting, DeathCoordinates*, DiscordSRV, EnchGuard*, Essentials, EssentialsAntiBuild, EssentialsChat, EssentialsProtect, EssentialsSpawn, FixGuard*, FixPreventer, Geyser-Spigot, GoldenEnderChests*, GoldenPlayTimes, GoldenScoreboard*, GroupManager, HeadDatabase*, HolographicDisplays, HubItems*, IslandWorld, ItemRanks*, Landlord, LiftSign*, Lottery, LuckyDrops, LuckyRandomChests*, Maintenance, mcMMO, MobArena, MoreQuartz, Multiverse-Core, Multiverse-Inventories, OfflinePlayerListAPI*, PartyChatSpy*, PlayerParticles, PluginManager*, ProtocolLib, Quests, QuestsGUI, Shopkeepers, SignEditor, SimplePets, SQLibrary*, SuperVanish, SurvivalGames, TAB, TuxTwoLib*, uCars, UltraChest, Vault, ViaBackwards, ViaRewind, ViaVersion, VoidGenerator, VoidSpawn, VotedFly, Votifier, VotingPlugin, VoxelSniper, WebSender*, WolfyUtilities, WooMinecraft*, WorldEdit, WorldGuard, WorldResetPlus*, ZavMessage*

Aufgrund des hohen RAMs dürfte die Anzahl von 10 Welten etwa kein Problem darstellen.

Ich hoffe auf Hilfe, wir sind nämlich sehr ratlos.

Mit freundlichem Gruß,
Tom
 

Malfrador

Threadripper
Registriert
16 Juni 2013
Beiträge
1.473
Diamanten
396
Minecraft
Malfrador
Der Ryzen 5 3600 ist sicherlich der deutlich bessere Prozessor. Wichtig für Minecraft-Server ist allerdings die Singlecore-Leistung. Da steht der zwar auch besser da (was man von einem deutlich neueren Prozessor ja auch erwarten darf), aber das größte Merkmal dieses Prozessors ist in meinen Augen die gute Multicore-Leistung - mit der Minecraft-Server nur sehr bedingt etwas anfangen können.

Dein Problem ist aber nicht hardwarebedingt. Der Prozessor ist nicht der allerbeste, einigermaßen vernünftige Leistung mit ~20-30 Spielern sollte aber damit drin sein.
  • Insbesondere bei so viel RAM (unnötig viel meiner Meinung nach) sind die korrekten GC-Flags wichtig. Die Timings weisen dich in dick und rot auch darauf hin: FIX THIS (Klick mich). So wie deine Timings aussehen stammt ein sehr großer Teil deines Lags auch einfach daher. Durchschnittlich 115% Server-load ist zwar nicht gut, aber sollte alleine nicht 10 TPS zur Folge haben, sondern eher so 17,00.
  • Du hast eine unglaublich hohe Anzahl an Welten. Wieviel RAM ist dabei absolut irrelevant, das Problem ist das in jeder Welt der Spawn geladen wird & damit dort Chunks ticken, Mobs spawnen, Blöcke updaten etc.. Normal sind vielleicht drei bis fünf pro Server, du hast nicht 10 sondern 31. Ich würde das reduzieren (e.g. Welten nur laden wenn sie benötigt werden), aber auf jeden Fall keep-spawn-loaded in der Paper bzw. Multiverse-Config deaktivieren. So wie es aussieht, hast du das nicht, denn in jeder dieser 31 Welten gibt es tickende Chunks.
  • Ich würde dir unbedingt empfehlen, die hier beschriebenen empfohlenen Einstellungen für Bukkit, Spigot & Paper zu beachten.
    Dabei handelt es sich um sehr viele Einstellungen. Bei jeder Option ist beschrieben, wie groß ihr Einfluss ("Impact") auf die Server-Performance ist sowie was die Option genau tut.
    Ich würde dir empfehlen, so gut wie alle Optionen einfach zu übernehmen. Auch so trivial und unwichtig anmutende Dinge wie grass-spread-tick-rate können einen Unterschied machen. Dengrößten Impact sollten aber wahrscheinlich die Hopper- und Villager-Optionen haben.
  • Dort nicht beschrieben aber super sinnvoll ist die no-tick-view-distance (paper.yml). Diese einfach auf einen höheren Wert als die normale Sichtweite (server.properties) setzen und diese reduzieren. No-Tick-Chunks werden zwar gesendet, aber nicht getickt und brauchen entsprechend weniger Leistung. z.B: no-tick-view-distance: 8 und view-distance: 4
  • Essentials führt automatisch alle paar Minuten den /save-all-Befehl aus. Davon ist abzuraten, der Server ist gut in der Lage auf seine Chunks und Daten selbstständig aufzupassen und diese nebenbei zu speichern. Im Gegensatz zum normalen Laden und Speichern von Chunks findet das ganze auch noch im Mainthread statt - nicht gut. Das lässt sich in der Essentials-Config unter backup deaktivieren. Das normale Backup-Feature ist absolut okay, nur nicht dieser Befehl
Ich würde dir empfehlen, die oben aufgelisteten Tipps zu befolgen und dann noch einmal Timings mit einer ähnlichen Spielerzahl zu machen, sollte es weiterhin laggen. Ein Hardware-Upgrade ist in meinen Augen nicht notwendig, mehr RAM auf keinen Fall.
 
Zuletzt bearbeitet:

JakkitDE

Minecrafter
Registriert
16 April 2016
Beiträge
16
Alter
26
Diamanten
250
Der Ryzen 5 3600 ist sicherlich der deutlich bessere Prozessor. Wichtig für Minecraft-Server ist allerdings die Singlecore-Leistung. Da steht der zwar auch besser da (was man von einem deutlich neueren Prozessor ja auch erwarten darf), aber das größte Merkmal dieses Prozessors ist in meinen Augen die gute Multicore-Leistung - mit der Minecraft-Server nur sehr bedingt etwas anfangen können.

Dein Problem ist aber nicht hardwarebedingt. Der Prozessor ist nicht der allerbeste, einigermaßen vernünftige Leistung mit ~20-30 Spielern sollte aber damit drin sein.
  • Insbesondere bei so viel RAM (unnötig viel meiner Meinung nach) sind die korrekten GC-Flags wichtig. Die Timings weisen dich in dick und rot auch darauf hin: FIX THIS (Klick mich). So wie deine Timings aussehen stammt ein sehr großer Teil deines Lags auch einfach daher. Durchschnittlich 115% Server-load ist zwar nicht gut, aber sollte alleine nicht 10 TPS zur Folge haben, sondern eher so 17,00.
  • Du hast eine unglaublich hohe Anzahl an Welten. Wieviel RAM ist dabei absolut irrelevant, das Problem ist das in jeder Welt der Spawn geladen wird & damit dort Chunks ticken, Mobs spawnen, Blöcke updaten etc.. Normal sind vielleicht drei bis fünf pro Server, du hast nicht 10 sondern 31. Ich würde das reduzieren (e.g. Welten nur laden wenn sie benötigt werden), aber auf jeden Fall keep-spawn-loaded in der Paper bzw. Multiverse-Config deaktivieren. So wie es aussieht, hast du das nicht, denn in jeder dieser 31 Welten gibt es tickende Chunks.
  • Ich würde dir unbedingt empfehlen, die hier beschriebenen empfohlenen Einstellungen für Bukkit, Spigot & Paper zu beachten.
    Dabei handelt es sich um sehr viele Einstellungen. Bei jeder Option ist beschrieben, wie groß ihr Einfluss ("Impact") auf die Server-Performance ist sowie was die Option genau tut.
    Ich würde dir empfehlen, so gut wie alle Optionen einfach zu übernehmen. Auch so trivial und unwichtig anmutende Dinge wie grass-spread-tick-rate können einen Unterschied machen. Dengrößten Impact sollten aber wahrscheinlich die Hopper- und Villager-Optionen haben.
  • Dort nicht beschrieben aber super sinnvoll ist die no-tick-view-distance (paper.yml). Diese einfach auf einen höheren Wert als die normale Sichtweite (server.properties) setzen und diese reduzieren. No-Tick-Chunks werden zwar gesendet, aber nicht getickt und brauchen entsprechend weniger Leistung. z.B: no-tick-view-distance: 8 und view-distance: 4
  • Essentials führt automatisch alle paar Minuten den /save-all-Befehl aus. Davon ist abzuraten, der Server ist gut in der Lage auf seine Chunks und Daten selbstständig aufzupassen und diese nebenbei zu speichern. Im Gegensatz zum normalen Laden und Speichern von Chunks findet das ganze auch noch im Mainthread statt - nicht gut. Das lässt sich in der Essentials-Config unter backup deaktivieren. Das normale Backup-Feature ist absolut okay, nur nicht dieser Befehl
Ich würde dir empfehlen, die oben aufgelisteten Tipps zu befolgen und dann noch einmal Timings mit einer ähnlichen Spielerzahl zu machen, sollte es weiterhin laggen. Ein Hardware-Upgrade ist in meinen Augen nicht notwendig, mehr RAM auf keinen Fall.

Vielen vielen Dank schonmal für deine Antwort. Also ich habe den Inhalt der start.sh auf folgendes geändert:
Code:
java -Xms8G -Xmx10G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUp******PauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar paper-231.jar nogui

keep-spawn-loaded habe ich auf false gestellt. no-tick-view-distance steht nun auf 12, die view-distance nachwievor auf 8. In der Essentials config habe ich folgendes eingestellt, ich weiß nicht, ob es korrekt ist:

Code:
backup:
  interval: 30
  command: false

Der Timings Report folgt nun: https://timings.aikar.co/?id=cd539244d19c481abb62794df947f5c0
 

Malfrador

Threadripper
Registriert
16 Juni 2013
Beiträge
1.473
Diamanten
396
Minecraft
Malfrador
Das sieht in der ersten Hälfte schonmal besser aus. Nicht optimal, aber solang die TPS stabil bei 20 sind kann man den roten Balken in den Timings durchaus ignorieren - der Server kommt ja noch problemlos hinterher. In der Mitte passiert dann allerdings irgendetwas (was lässt sich leider nicht erkennen) und die Performance geht wieder in den Keller.

Ich würde mit der view-distance wirklich noch runtergehen. no-tick kann natürlich so bleiben, das braucht wie erklärt kaum Leistung. Die einzigen Dinge für die Chunks ticken müssen sind Blockupdates & Mobs - und das merkt in vier oder sechs Chunks Entfernung (in jede Richtung) eh keiner, insbesondere bei Skyblock. Wir haben die view-distance (8) auf der Hälfte der no-tick-view-distance (16) und ich denke das ist eine gute Faustregel.

Ansonsten kann ich dir nur empfehlen, auch die restlichen Optionen mal durchzugehen und zumindest die, bei denen "Impact: High bzw. Impact: Medium" dransteht mal zu übernehmen.
Zusätzlich dazu ist das Plugin "Citizens" für einen großen Anteil deiner aktuellen Serverauslastung verantwortlich (30%+). Das ist leider ein generelles Problem mit diesem Plugin & außer die Zahl der NPCs an einer Stelle zu reduzieren und Features wie look-close nur zu benutzen wenn wirklich nötig kann man da nicht allzu viel tun.

ich weiß nicht, ob es korrekt ist:
Das ist nicht unbedingt korrekt. Am besten wäre command: ''. Deaktiviert ist es allerdings auch so, Essentials kann den Config-Eintrag nämlich einfach nicht lesen.

start.sh auf folgendes geändert:
Das ist grundsätzlich richtig. Allerdings sollten Xmx und Xms auf dem gleichen Wert sein (also z.B. beide 10G). Die gesamten restlichen Einstellungen basieren darauf, das das der Fall ist.

Ein Frage hätte ich noch: Handelt sich um einen wirklichen Dedicated-Server oder einen Shared Host/VPS? Es gibt leider Hoster, die solche Shared-Systeme total überbuchen, wodurch du letztendlich dir zu wenig CPU-Leistung mit zu vielen anderen Kunden teilst. Da kannst du dann optimieren wie du willst & der Server wird trotzdem nie gut laufen. Das ist besonders beim sehr CPU-intensiven Minecraft ein Problem, das gerne vergessen wird. Ich frage das hauptsächlich weil deine Timings leider immer noch nicht gut aussehen und ich nicht glaube, das es am Prozessor liegt.
Unser Server nutzt einen etwas schlechteren Prozessor & weniger Performance-freundliche Einstellungen und Plugins als du, aber solche starke Problemen hatten wir mit deutlich mehr Spielern noch nie. Deswegen mein Verdacht das eventuell die CPU-Leistung gar nicht abgerufen werden kann.
 

JakkitDE

Minecrafter
Registriert
16 April 2016
Beiträge
16
Alter
26
Diamanten
250
Das sieht in der ersten Hälfte schonmal besser aus. Nicht optimal, aber solang die TPS stabil bei 20 sind kann man den roten Balken in den Timings durchaus ignorieren - der Server kommt ja noch problemlos hinterher. In der Mitte passiert dann allerdings irgendetwas (was lässt sich leider nicht erkennen) und die Performance geht wieder in den Keller.

Ich würde mit der view-distance wirklich noch runtergehen. no-tick kann natürlich so bleiben, das braucht wie erklärt kaum Leistung. Die einzigen Dinge für die Chunks ticken müssen sind Blockupdates & Mobs - und das merkt in vier oder sechs Chunks Entfernung (in jede Richtung) eh keiner, insbesondere bei Skyblock. Wir haben die view-distance (8) auf der Hälfte der no-tick-view-distance (16) und ich denke das ist eine gute Faustregel.

Ansonsten kann ich dir nur empfehlen, auch die restlichen Optionen mal durchzugehen und zumindest die, bei denen "Impact: High bzw. Impact: Medium" dransteht mal zu übernehmen.
Zusätzlich dazu ist das Plugin "Citizens" für einen großen Anteil deiner aktuellen Serverauslastung verantwortlich (30%+). Das ist leider ein generelles Problem mit diesem Plugin & außer die Zahl der NPCs an einer Stelle zu reduzieren und Features wie look-close nur zu benutzen wenn wirklich nötig kann man da nicht allzu viel tun.


Das ist nicht unbedingt korrekt. Am besten wäre command: ''. Deaktiviert ist es allerdings auch so, Essentials kann den Config-Eintrag nämlich einfach nicht lesen.


Das ist grundsätzlich richtig. Allerdings sollten Xmx und Xms auf dem gleichen Wert sein (also z.B. beide 10G). Die gesamten restlichen Einstellungen basieren darauf, das das der Fall ist.

Ein Frage hätte ich noch: Handelt sich um einen wirklichen Dedicated-Server oder einen Shared Host/VPS? Es gibt leider Hoster, die solche Shared-Systeme total überbuchen, wodurch du letztendlich dir zu wenig CPU-Leistung mit zu vielen anderen Kunden teilst. Da kannst du dann optimieren wie du willst & der Server wird trotzdem nie gut laufen. Das ist besonders beim sehr CPU-intensiven Minecraft ein Problem, das gerne vergessen wird. Ich frage das hauptsächlich weil deine Timings leider immer noch nicht gut aussehen und ich nicht glaube, das es am Prozessor liegt.
Unser Server nutzt einen etwas schlechteren Prozessor & weniger Performance-freundliche Einstellungen und Plugins als du, aber solche starke Problemen hatten wir mit deutlich mehr Spielern noch nie. Deswegen mein Verdacht das eventuell die CPU-Leistung gar nicht abgerufen werden kann.

Vielen Dank für deine erneute Rückmeldung. Wir haben sehr viele NPCs, da wir das Quests Plugin damit nutzen. Und es gibt für jedes Kapitel einen individuell gestalteten Raum mit jeweils einem NPC. Den Wert mit dem RAM in der start.sh habe ich mal geändert.

Tatsächlich nutzen wir einen rein dedizierten Server. Genau genommen von Server4You.de (ohne dafür jetzt werben zu wollen). Und dort unter Dedicated Server das Paket Haswell Light, nur dann in der SSD Version. Damals waren wir bei Contabo mit VPS, aber wie du sagtest, das war ab der 1.14 nicht mehr auszuhalten, vorher war die Leistung genial. Aber ab der 1.14 droppten die TPS extrem. Nach dem Wechsel zu Server4You mit einem dedizierten Server waren die TPS dann immer 20. Aber nun nach dem Umstieg auf die 1.16 wieder so wenig TPS.

Wir nutzen das Citizens von Jenkins. Würde es vielleicht helfen, wenn wir die Citizens Version von spigotmc.org nutzen würden, oder ist das genau die selbe?

LG Tom
 
Oben