Configuration Problème de ram très gourmande

Atsunra

Aventurier
21 Octobre 2017
4
1
4
27
Bonjour,

Je possède actuellement un serveur Minecraft hébergé chez Revolta-Hosting.
Le problème est le suivant : J'ai alloué ce matin 4Go de RAM à mon serveur avant de le lancer. Au lancement, après quelques minutes, la mémoire s'est stabilisé à env. 40% de son usage maximum. En retournant voir le soir, elle est monté à 80%. La seule activité qu'il y a eu pendant ce laps de temps est un peu de construction (légère) par un seul joueur (mon collègue). Le serveur n'a pas redémarré entre temps.

Voici sa configuration :
Code:
Serveur sous Sponge Forge
Version 1.10.2
80 slots
Une map remplie de construction (mais pas non plus énorme)
3 mods d'installés : SpongeForge, WordEdit-forge-mc, GrimoireOfGaia3
Aucun plugin
Configuration générale très peu touchée

Et voici la configuration de la machine :
Code:
1 vCore @ 3,2 à 4GHz
8GO DE RAM
20GO D'ESPACE DISQUE NVMe (SSD SUR PCIe)
SERVEURS ILLIMITES
SLOTS ILLIMITES
ADMIN MULTICRAFT
PROTECTION ANTI-DDOS ARBOR®
PROCESSEUR Xeon E5 @ 3.2GHz
IP DEDIEE & PORT 25565

Je n'arrive pas à saisir pourquoi la mémoire ram augmente autant en fonction du temps alors qu'une seule personne est connectée et ne fait pas grand chose (elle n'a pas copié collé beaucoup de blocs avec WorldEdit ou autre). Est-ce dû aux sauvegardes automatiques ? Sur le panel, il est dit que Revolta-Hosting ne conserve que les 3 dernières..
Je vous fournis les logs du serveur, pourriez-vous y jeter un coup d'oeil et me dire si quelque chose cloche ?
Par ailleurs, si vous souhaitez plus d'informations, je reste à votre disposition.

Merci à vous,
Atsunra
 

Fichiers joints

  • logs.zip
    214.8 KB · Affichages: 152

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 424
193
489
247
21
Mìlhüsa
Déjà, tu lance ton serveur avec 4 Go de RAM alors que tu peut monter à 8 Go, alors monte à 8 Go :3

Alors oui un serveur sous Forge va consommer beaucoup plus de RAM qu'un serveur Spigot/Bukkit.

Et sinon, si je ne dit pas de bêtises, le fait que le serveur prend de plus en plus de RAM est due au fait que les variables du serveur ne sont pas désallouées correctement, c'est pour ça qu'il faut redémarrer (et pas reload, reload à n'utiliser juste en phase de construction du serveur) de temps en temps, comme par exemple à 3H du matin, ou quand personne n'est connecté le soir histoire qu'il restart une fois par jour.

À part restart ton serveur de temps en temps, il n'y a pas (je pense) grand-chose à faire.

Cordialement,
ShE3py.
 
  • J'aime
Reactions: Atsunra

Atsunra

Aventurier
21 Octobre 2017
4
1
4
27
Merci ShE3py pour ta réponse.

Oui, je vais dès demain passé à 8Go de mémoire ^^.
As-tu pu jeter un petit coup d'oeil aux logs que j'ai mis en pièce jointe ? As-tu trouvé quelque chose d'anormal ? A quoi est dû le fait que ces variables ne parviennent pas à se désallouées ?
Si tout est normal, cela me rassure. Il n'y a aucun problème pour paramètrer un petit restart tôt le matin, je peux tout à fait m'y résoudre si ça peut aider le serveur et réduire les erreurs et les lags.

Je me posais également la question suivante : On ne voit jamais les très grands serveurs en offline, leur(s) serveur(s) ne s'arrête(nt) jamais. Comment font-ils pour libérer dynamiquement la RAM ? Je sais que certains fonctionnent sous Spigot/Bukkit, cela est peut-être plus simple dû à l'architecture, mais et les autres qui sont sous Forge, comment font-ils ?
Procèdent-ils comme les dauphins à l'aide de 2 serveurs : Il y en a un qui prend toute la charge, l'autre en profite pour s'éteindre et se rallumer, et inversement avant de se répartir à nouveau la charge ?

Merci,
Atsunra
 

ShE3py

Enbogueuse
Support
26 Septembre 2015
4 424
193
489
247
21
Mìlhüsa
As-tu pu jeter un petit coup d'oeil aux logs que j'ai mis en pièce jointe ? As-tu trouvé quelque chose d'anormal ? A quoi est dû le fait que ces variables ne parviennent pas à se désallouées ?
Rien dans les logs, à part un spam étonnant de There are x/80 players online. Rien aussi dans les logs FML, autant te dire que sa fait plaisir de voir quelqu'un qui a réussi à configurer tout seul un serveur moddé, car quand ont installe masse mods y'a toujours des bricoles qu'il faut régler ;)
Et sinon, le problème n'est pas le code en soit mais Java, car en gros les fichiers .jar ne sont pas en binaire mais en bytecode, donc en gros le pc ne peut pas lire un fichier .jar il faut qu'il lance java qui lui va lire ce fichier et faire ce qu'il dit, ce qui prend beaucoup de performances je crois.
En gros le problème viens plutôt de Java que du serveur/plugins, mais si ont peut les optimisés un fichier .jar sera toujours moins performant qu'un .exe

Je me posais également la question suivante : On ne voit jamais les très grands serveurs en offline, leur(s) serveur(s) ne s'arrête(nt) jamais. Comment font-ils pour libérer dynamiquement la RAM ? Je sais que certains fonctionnent sous Spigot/Bukkit, cela est peut-être plus simple dû à l'architecture, mais et les autres qui sont sous Forge, comment font-ils ?
Procèdent-ils comme les dauphins à l'aide de 2 serveurs : Il y en a un qui prend toute la charge, l'autre en profite pour s'éteindre et se rallumer, et inversement avant de se répartir à nouveau la charge ?
Je ne sait pas ce que tu veut dire par dauphin, mais je pense que c'est dans le même genre : en gros un serveur général qui sert juste à rediriger le joueur vers un autre serveur, et donc en gros il se débrouiller pour restart les serveurs de temps en temps (par exemple quand il lance un UHC, il démarre un autre serveur, fait rejoindre les joueurs et quand la game est fini coupe le serveur). Pareils pour les lobby, il y en a plusieurs.
 

Atsunra

Aventurier
21 Octobre 2017
4
1
4
27
Merci pour tes réponses ShE3py, elles me sont d'une grande aide. Ca me rassure que ce ne soit pas un problème de serveur, je vais pouvoir continuer son avancée dans ce cas.
Du coup, j'ai augmenté la capacité totale d'utilisation de la RAM par le serveur de 4Go à 8Go, et planifié un redémarrage vers 3h du matin.
Je garderai un oeil sur l'évolution de la RAM, mais normalement tout devrait bien se passer :)