Salut,
J'ai récemment commencé à monter un serveur minecraft sur Raspberry pi pour jouer avec mes amis, j'ai en l’occurrence un modèle 3 B.
J'utilise la version Jenkins SpigotMC (serveur) et je fais toutes les manips a partir de mon pc connecté en SSH avec mon Raspberry branché en Ethernet à une CPL. Je suis pas sur que ça serve à quelque chose comme info mais on sait jamais.
Donc quand j'allume mon serveur, que personne n'y est connecté, il me met déjà de temps en temps :
Can't keep up ! Is the server overloaded ? Running [en gros 2 000 ça dépend]ms or [en gros 50 ça dépens] ticks behind
Voila ce qu'ils se passe quand je me connecte après avoir démarré le serveur : même si je ne fais que voler de quelques mètres, j'ai le message d'erreur timed out, mais la console n'as même pas vu que je ne suis plus la, et si je réessaie, ça me connecte mais au bout de quelques temps (comme le timed out) le serveur crash et je dois le redémarrer, l'erreur est la suivante côté pc :
Connection Lost
Internal Exception: java.io.IOException: une connexion existante à dû être fermée par l'hôte distant
Côté serveur, voila le rapport de crash :
GNU nano 2.7.4 Fichier : crash-2019-02-18_14.50.52-server.txt
at aer.a(SourceFile:639)
at afa.a(SourceFile:1697)
at afa.k(SourceFile:1998)
at afb.k(SourceFile:495)
at aeo.k(SourceFile:134)
at ajq.k(SourceFile:46)
at ajr.k(SourceFile:81)
at afa.R_(SourceFile:1819)
at afb.R_(SourceFile:279)
at axy.a(SourceFile:1243)
at td.a(SourceFile:575)
at axy.g(SourceFile:1218)
at axy.o_(SourceFile:1100)
at td.o_(SourceFile:491)
at net.minecraft.server.MinecraftServer.b(SourceFile:755)
at so.b(SourceFile:360)
at net.minecraft.server.MinecraftServer.a(SourceFile:681)
-- Thread Dump --
Details:
Threads: "Netty Server IO #2" Id=25 RUNNABLE (in native)
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:79)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
- locked io.netty.channel.nio.SelectedSelectionKeySet@1ca7f19
- locked java.util.Collections$UnmodifiableSet@10d8750
- locked sun.nio.ch.EPollSelectorImpl@1321469
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:62)
at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411)
...
"WorldGen-Worker-1" Id=24 TIMED_WAITING on java.util.concurrent.ForkJoinPool@308d6b
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.ForkJoinPool@308d6b
at java.util.concurrent.ForkJoinPool.awaitWork(ForkJoinPool.java:1824)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1693)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
"WorldGen-Scheduler-1" Id=23 WAITING on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@601703
at sun.misc.Unsafe.park(Native Method)
- waiting on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@601703
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
Voila j'y compriends absolument rien et j'ai pas trouver grand chose donc merci d'avance
Le raspberry pi n'est pas assez performant pour un serveur MC
C'est ce que je me suis dit au début sauf que beaucoup de gens en font avec des raspberry moins puissant que celui-là, donc le problème ne peut pas être là.
Proposition :
Essaye d'installer un autre JDK (oracle/open)
Essaye avec le launcher officiel pour voir si le problème ne vient pas du launcher custom.
Regarde les logs/metrics de ton serveurs, si tu swap, si tu est à 100% de RAM utilisé etc etc
Vérifie le -xmx au lancement du launcher
Pour le serveur officiel, je ne peux même pas me connecter, il charge puis timed out, et le serveur met toujours les messages de surcharge.
Quant au Xmx, il est à 1024, soit le maximum de mon Raspberry
Pour le reste j'essaie et j'edit ce message
Il charge normalement puis affiche Encrypting... et c'est la qu'il affiche timed out, avec parfois le serveur qui crash
Sinon j'ai installé open mais, en ouvrant mon .jar je ne sais pas si il l'ouvre avec open ou java.
Pour les logs, quand je les ouvrent ils affichent des caractères rectangulaires ou qqc qui ne veut rien dire.
ERRATUM : après avoir passé online-mode en false, je peux me connecter mais le serveur crash quand même, et revient aux mêmes erreurs que celles de mon premier message
Bon en fait maintenant ça marche mais je sais pas pourquoi j'ai juste réinstallé SpigotMC. Au cas où ça peut vous aider.