RAM confisquées par JAVA. Serveur minercraft

Sucrepapa

Aventurier
31 Décembre 2022
1
0
1
25
Bonjour a tous !
Et merci d'avance pour votre aide/avis.

Alors voila mon problème messieurs, j'aimerais que mon serveur minecraft me rende ma putain de mémoire vive.
Quand je lance mon serveur je lui donne 2GB de ram mini et 30GB maxi. Xms2048 et Xmx 30720.

Au début tout va bien, mais quand je pousse un peu le serveur (je fais péter de la TNT partout), il se mets a devenir gourmand en RAM (pas de soucis pour l'instant c'est logique).
Sauf que ce petit batard de processus JAVA me rend pas ma ram,
il se la bloque pour lui alors qu'il n'en as plus besoin comme vous pouvez le voir sur le top de mon srv debian. Là c'est que 5,1 GB bloqué parce que j'ai relancé mon serv mais avant c'était 19,4GB de bloqué par JAVA, Fin bro pour qui tu te prends quoi , ce petit processus JAVA de merde bouffe 80 % de la ram totale de mon hyperviseur facile.

Le frérot se mets vraiment bien.

Pitié aidez-moi.

Amicalement Vôtre,
Proxmox.PNG
Top_vmsrvminecraft.PNG
VM srv minecraft.PNG
VM srv minecraft.PNG
Top_vmsrvminecraft.PNG
Proxmox.PNG
Sucrepapa.
 

Detobel36

Créateur de plugins (PhoenixRebirth)
Support
17 Août 2012
10 531
24
2 247
347
28
Bruxelles - Belgique
www.phoenix-rebirth.fr
Salut,

Alors tu dois comprendre comment fonctionne Java...
Java un langage où on ne s'occupe pas de nettoyer les variables inutiles. On développes et Java s'occupe de supprimé ce qui ne lui sert plus.

Evidemment, Java, c'est pas dieu. Il peut pas savoir à l'avance si tu va avoir encore besoin d'une variable. Donc il ne fait pas le ménage au fur et à mesure. Quand Java se rend compte que c'est le bordel chez lui, il appel sa femme (ou son "homme" si vous préférez) de ménage (je suis pour la parité :p ), j'ai nommé "le garbadge collector".

Tu nous informe que tu donnes 30Go de RAM maximum à Java. Donc c'est comme si tu offrais un belle appartement de 30 m² à Java. Quand il utilise 20Go de RAM. Tranquille, pas besoin de faire le ménage, il lui reste 10 m² à remplir... Donc il ne supprime pas la mémoire inutile, vu que c'est pas utile il a la place...

Donc deux solutions pour toi:
  • soit tu acceptes que Java puisse utiliser 30Go mais dans ce cas la, tu peux pas te plaindre qu'il utilise 20Go (vu que tu lui a dit qu'il pouvait en utilise 30).
  • soit tu diminues la mémoire maximum que tu veux bien donner à Java.


Cordialement,
Detobel36