Garbage collector et pauses
Pourquoi le serveur se fige quelques secondes à TPS normal : comment fonctionne la collecte des déchets, comment la voir dans les logs et ce qui aide réellement.
Mis à jour le 13 août 2026
Java libère la mémoire par pauses : l'application s'arrête, le ramasse-miettes supprime les déchets, puis le travail reprend. Une pause longue ressemble à un gel de tout le serveur.
Symptômes
- Le TPS moyen est normal, mais toutes les quelques minutes tout se fige pendant 1 à 5 secondes.
- Dans le log Paper :
Can't keep up! Did the system time change, or is the server overloaded?— analyse. spark healthaffiche la part du temps passée dans le GC.
Ce qui l'influence
| Facteur | Effet |
|---|---|
| Taille du tas | Tas plus grand — pause plus longue |
| Taux de création de déchets | Plugins et mods qui créent des objets en boucle |
| Collecteur | G1 par défaut ; ZGC donne des pauses courtes sur de grands tas |
| Nombre de cœurs | La collecte parallèle est plus rapide |
Que faire
- Ne donnez pas de mémoire « avec une plus grande marge ». 32 Go là où 8 suffisent signifie des pauses plus longues. Une bonne référence est le pic plus 30 à 50 % — Combien de mémoire faut-il.
- Trouvez la source des déchets.
spark heapsummarymontrera ce qui remplit le tas. Souvent, il s'agit d'un plugin ou d'un mod précis. - Les flags. Un G1 réglé est déjà défini chez Millida ; les réglages manuels trouvés sur internet font plus souvent du mal — Flags d'Aikar.
Ce qu'il ne faut pas faire
N'essayez pas de « désactiver le ramasse-miettes » — cela n'existe pas comme option. Ne réglez pas -Xmx au-delà de la quantité de mémoire de votre offre : le processus sera tué lorsqu'il tentera de dépasser la limite — OutOfMemoryError.
Hébergement MinecraftVotre serveur tourne même hors ligneCréer le serveur
