Jump to content

Grundlose Serverlags


Arcalio

Empfohlene Beiträge

Hallo,

auch ich muss mich mal mit einem Problem melden. Ich habe (für rein private Zwecke) einen kleinen Vanilla-Server auf meinem Root-Server. Aus für mich absolut unerklärlichen Gründen laggt der Server ab und an in unglaublich hohen Maßen (Can't keep up... [jeder kennt das]). Manchmal überspringt er damit Zeiten von bis zu 30 Minuten. In der Zeit ist der Server natürlich nicht erreichbar. Das kommt selten vor. Ansonsten läuft der Server absolut ohne Probleme.

Meiner Ansicht nach reicht auch die Serverleistung für Minecraft vollkommen aus.

Vielen Dank für eure Hilfe!!

 

Liebe Grüße

Arcalio / Mario

 

 

--------------------------------------------

Hier noch ein paar wichtige Daten:

CPU: Intel Xeon E3-1230 v3 @ 3,3 GHz

Zugewiesener RAM: 2-4 GB

Java: Java 8 Update 71

Minecraft-Version: 1.8.9

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

ich komme währenddessen wunderbar auf alles andere des Servers.

Ist ein Windows-Server. Die Auslastung von RAM und CPU ist eher unterirdisch (CPU ~3%, RAM ~20%).

 

Möglicherweise liegt es an einer Eigenart der Windows-Services. Mir wurde von mehreren Spielern gemeldet, der Server sei down. Und genau in dem Moment (nach etwa 32 Minuten), als ich dann nachgesehen habe, hat sich der Server wieder gefangen. Vielleicht irre ich mich, aber möglicherweise gibt es da ein Problem.

Ich bin aber für jeden Lösungsvorschlag dankbar :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Seit einigen Monaten gibts auf unserem Server ein ähnliches Problem:

A single server tick took 111,89 seconds (should be max 0,05)
Considering it to be crashed, server will forcibly shutdown.

Auch kommen vermehrt Meldungen wie:

Can't keep up! Did the system time change, or is the server overloaded? Running 30397ms behind, skipping 607 tick(s)

Jedoch kommen die "Can't keep up"-Meldungen nicht direkt vor dem Crash, sondern einige Stunden vorher (wenn überhaupt). 

Interessanterweise kommt es auch zu einem Crash oder zu einem "Cant keep up" wenn kein Spieler auf dem Server ist. Was ziemlich merkwürdig ist. 

Der Loadaverage ist meistens um die 0.7 bis 0.95 wenn Spieler ingame sind.

Ich hänge den Crashreport mal anbei.

Vllt finden wir ja eine Lösung zu unserem Problem.

 

crash-2016-02-01_07.53.54-server.txt

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

@thedude

es gibt im Bugtracker für die aktuelle Versionen einen Eintrag: [MC-96059] Watching Server java.lang.Error - JIRA

Dieser verweist auf einen anderen: [MC-63590] Watchdog shuts down server - JIRA

In diesem ist eine Moderator Note:

Zitat

To set the server watchdog to a higher time or switch it off:

Set max-tick-time in server.properties to a value higher than 60000 or to -1
server.properties – Minecraft Wiki

Ihr könnt ja mal schauen, ob euch das hilft.

 

-Yuki

Link zu diesem Kommentar
Auf anderen Seiten teilen

Damit kommt @thedude dann genau auf meinen Stand. Denn genau das habe ich auch gemacht ^^

Watchdog killt den Server, wenn er zu sehr laggt. Und wenn man dann Watchdog höher dreht, dann startet er den Server erst bei größeren Lags neu.

Das kann man handhaben, wie man möchte: Restart oder längere Lags.

Leider scheint mir das ja aber keine Lösung des Problems zu sein. Denn Watchdog macht das ja auch nur bei Serverlags. Die große Frage ist ja aber vorallem, wo die schlussendlich herkommen...

 

Grüße

Arcalio

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also genaugenommen hab ich den Stand schon seit 6 Wochen erreicht. Seitdem ist die max-tick-time auf 100.000 eingestellt. 

Die einzige Änderung scheint zu sein, dass der Server nicht mehr so oft abschmiert. Aber das löst das Problem ja nicht. Lags während des Spiels sind nervig. Wenn der Server dann auch noch stark hinterher hinkt, wenn niemand ingame ist, ist das echt merkwürdig. 

Die Ursache der Lags würde mich echt mal interessieren. Aber schön zu wissen, dass ich mit dem Problem nicht alleine da stehe. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Startscript ist ein bisschen umfangreicher, da ein start-stop-daemon einen Wrapper startet, welcher ein Unix-Socket bereitstellt. Der Wrapper startet jedoch: 

java -Xms1G -Xmx8G -jar minecraft_server.jar nogui

Zur Zeit teste ich den genannten Befehl direkt in einem Screen Terminal, ohne Wrapper oder Daemon.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

ich würde hier mal, und das gilt hier genauso wie beim Client, mit erweiterten Startoptionen testen:

-XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -XX:+UseGCOverheadLimit -XX:-UseParallelGC -XX:ParallelGCThreads=4 -XX:+AggressiveOpts -XX:LargePageSizeInBytes=4m -XX:+UseLargePages

Denn ein gut laufender GarbageCollector kann viel ausmachen.

Wenn ihr wisst, dass es ein 64bit System ist, kann man noch "-d64" anhängen um sicherzugehen, dass Java die Anwendung auch wirklich als 64bit ausführt und wenn es die installierte Version von Java zulässt kann man auch noch "-server" angeben, da hier die Ausführung für Serveranwendungen optimiert ist.

 

-Yuki

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hab die Parameter vorhin mal gesetzt. Veränderungen bemerke ich bisher keine. 

Jedoch ist mir etwas aufgefallen. Die Last des Servers war immer so zwischen 0.4 und 1.4 je nachdem welche Chunks aktiv waren. Für einen Quadcore ist das jetzt nicht viel. Interessant war jedoch, dass die "Cant keep up"-Meldungen unabhängig von der Last aufkamen. Konkret hab ich das bei einer Last von 1.13 und 1.25 beobachtet. 

Ich hätte eigentlich geschätzt, dass die Can't Keep Up Meldungen vorallem dann kommen, wenn der Server voll ausgelastet ist. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

"Can't keep up" ist nur eine Meldung welche aussagt, dass die Berechnung zu lang dauert oder aufgehalten wird, wodurch die Tickrate nicht gehalten werden kann. Das Resultat ist das überspringen von als nicht wichtig betrachteten Schritten des Prozesses oder das überspringen von Berechnungen, um den nötige Rechenschritt zu gewährleisten.

Dabei werden alle anstehenden Ticks ( zyklische Berechnungen ) hinten angestellt ( die in der Zeit eigentlich stattfinden würden ). Das Ganze führt dann zu den Verzögerungen bzw. durch Watchdog zum Abbruch des Prozesses.

 

( Alles stark vereinfacht, bitte keine unnötige korrektur )

Ich werde mich morgen Abend noch einmal melden und der Sache probieren auf den Grund zu gehen.

 

Mfg,

Spartaner

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

was vielleicht auch mal noch interessant zu wissen wäre, auf welchen Systemen ihr das laufen habt:

1. Lokal eigener Rechner

2. Root-/V-Server

3. Dedicated Server

Gerade bei 2. einem Root/V-Server der ja virtualisiert ist und wo ihr nicht die einzigsten auf einem Hardwareserver seid, kann es durchaus dazu kommen, wenn ein anderer, welcher noch auf Server liegt, diesen entsprechend auslastet, dass hierbei auch die anderen VMs beeinträchtigt werden. Sollte zwar nicht vorkommen, wenn die Virtualisierung richtig eingerichtet ist, aber ausschließen würde ich es nicht, denn ich habe hier auch schon so einiges erlebt.

Hier könnte man im Notfall beim Hoster anfragen, ob man auf einen anderen Server umziehen kann, bzw könnten diese ja erst einmal schauen, ob eine andere Virtualisierung entsprechend Probleme macht.

 

-Yuki

Link zu diesem Kommentar
Auf anderen Seiten teilen

Guten Abend,

das Angebot welches ihr dort nutzt, ist ein V-Server ( Root/V-Server ). Somit liegen mehrere Nutzer auf dem eigentlich dedizierten Server, womit es uns nicht möglich sein sollte, die Leistung zu erreichen, wie auf einer dezidierten Maschine. Somit werdet ihr eine Beeinträchtigung durch andere Nutzer erfahren.

Ich werde noch Probieren andere Problemzonen zu finden, jedoch wird es das beste sein ( wie Yuki erwähnt hat ) einmal beim Hoster anzufragen, ob dieser eine Beeinflussung feststellen kann oder

vor 10 Stunden, Yuki sagte:

ob man auf einen anderen Server umziehen kann

 

Mfg,

Spartaner

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

hast du sonst noch etwas auf deinem Server laufen? Interessant sind hier vielleicht Programme, welche Zugriffe auf die Festplatte erzeugen, denn im Normalfall hat ein root-Server ein Raid-System drin und wenn hier schnell viele Anfragen anlaufen, dann kann es unter Umständen passieren, dass das Raid nicht mehr in der gewohnten Zeit reagiert. (Es können hier massig kleine aber auch wenig dafür sehr große Datenmengen sein.)

 

-Yuki

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...
B
B