L’essentiel. Les performances d’une JVM conteneurisée se pilotent selon la version de Java, le budget mémoire et la nature de la charge.
Support des conteneurs
Les JVM récentes savent reconnaître les limites de ressources des cgroups : les réglages dépendent de la version et du runtime.
Heap versus mémoire totale
La heap n’est qu’une partie de la consommation ; threads, metaspace et buffers natifs comptent également.
Validation
Observer les OOMKilled, les pauses GC et les temps de réponse avec des mesures représentatives.
L’approche raisonnable
Fixer un pourcentage de heap seulement après avoir estimé la mémoire hors heap, choisir une image runtime maintenue et vérifier la charge réelle.
Limites et bonnes pratiques
Le post d’origine affirmait que la JVM ne reconnaît pas les limites des conteneurs par défaut ; cette formulation n’est plus correcte pour les JVM modernes. Les images Java 11 historiques de l’exemple doivent également être revues.
Publication NOVIT du 19/05/2025. La présente version est une adaptation éditoriale : elle ne remplace pas une validation des exemples sur votre version de Kubernetes.
Consulter la publication LinkedIn originale ↗