Garbage collection

Dev back

How Garbage Collection Handles 1M Requests/Second

Cet article explique comment la stratégie de gestion de la mémoire par le garbage collector (GC) dans la JVM peut affecter la performance des systèmes à fort débit, en particulier lorsque le trafic augmente subitement. L'auteur partage une expérience où le système a défailli sous une charge importante et souligne que ce n'est pas toujours la base de données ou l'équilibreur de charge qui lâche en premier, mais souvent le GC, qui ne respecte pas les accords de niveau de service (SLA) des utilisateurs.

Dev back

🧠 Smart Memory Management in Java (Java 21+ and Legacy JVM)

Cet article explore des méthodes avancées de gestion de la mémoire en Java, notamment la taille et le réglage du tas, l'analyse des échappements, et la gestion de la mémoire hors tas. Il aborde également les pièges liés aux fuites de mémoire et propose des outils de surveillance et de profilage. Les conseils incluent des astuces pour les versions modernes de Java (21+) et des recommandations pour l'optimisation des applications plus anciennes.

Dev back

Java Performance Tuning: JVM Secrets You’re Probably Missing

L'article traite des techniques d'optimisation de la performance de Java grâce à un réglage approprié de la JVM, en mettant l'accent sur les différentes formes de collecteurs de déchets (GC) disponibles dans Java 21+, tels que G1, Serial, Parallel, Shenandoah et ZGC. Il explique comment choisir le collecteur de déchets le plus approprié selon les besoins spécifiques des applications, qu'il s'agisse de faibles frais généraux ou de maximisation du débit.

Dev back

Do You Really Know Java?

Cet article explore l'histoire de Java, une langue de programmation qui a duré plus de 30 ans. Il détaille son origine en tant que projet secret à Sun Microsystems, son développement avec le WORA (écrire une fois, exécuter partout) grâce à la JVM, et ses fonctionnalités comme la collecte automatique des déchets et le multithreading intégré. Java a évolué pour devenir une force stable dans l'industrie, améliorant la manière dont les développeurs écrivent et livrent du code.

Dev back

Understanding JVM Memory architecture and guidelines and tools for troubleshooting

Cet article traite de l'architecture mémoire de la JVM, en mettant l'accent sur les problèmes de mémoire courants dans les applications Java et sur les outils pour les résoudre. Il décrit les principales composantes de la mémoire de la JVM, notamment le tas, la metaspace et le cache de code, ainsi que le fonctionnement du ramasse-miettes. Il aborde également les raisons fréquentes des problèmes de mémoire, telles que les fuites de mémoire, le taux de création d'objets élevé et la configuration inappropriée de la mémoire. En comprenant ces éléments, les développeurs peuvent mieux diagnostiquer et résoudre les problèmes de performance liés à la mémoire.

Dev back

Seven Types of Garbage Collectors in Java

Cet article présente une vue d'ensemble des collecteurs de déchets (Garbage Collectors) en Java, en détaillant sept algorithmes différents et leurs usages respectifs. Il explique le fonctionnement de la collecte des déchets et les critères pour choisir un algorithme en fonction de la version de Java et de la nature de l'application. Les algorithmes incluent le Serial GC, le Parallel GC, le Concurrent Mark Sweep GC, le Z GC, le G1 GC, le Shenandoah GC et le Epsilon GC, chacun ayant ses propres caractéristiques et cas d'utilisation.