Java lui-même est un programme très volumineux dont la complexité approche celle d'un système d'exploitation. Bien qu'il soit généralement assez stable, comme tout programme, il rencontre occasionnellement des problèmes tels que des plantages, des gels, etc. Lorsqu'un processus d'application Java gèle, il peut être difficile de le détecter et d'en récupérer. Parce que le processus Java lui-même existe toujours en mémoire, de nombreuses applications de surveillance externes penseront qu'il est en vie même s'il a cessé de répondre.
Lorsqu'un gel de la JVM se produit, il est généralement constaté par les utilisateurs ou d'autres systèmes qui n'arrivent plus à interagir avec l'application. Une fois notifié du problème, souvent via une plainte d'un utilisateur, un administrateur système doit alors se connecter au serveur, tuer la JVM gelée et redémarrer l'application. Tout cela peut potentiellement prendre quelques heures si la personne qui doit effectuer le travail est sortie dîner.
Solution |
||
|
La solution à ce problème consiste à disposer d'une application de surveillance, dotée d'une connaissance approfondie du fonctionnement de Java, à laquelle on peut faire confiance pour surveiller votre application Java 24 heures sur 24, 365 jours par an, et prendre automatiquement en charge les problèmes lorsqu'ils surviennent. Le Java Service Wrapper contient plusieurs fonctionnalités de surveillance. L'une d'elles est la capacité de détecter lorsqu'une JVM a gelé. Le Wrapper surveille constamment une JVM et contient une logique avancée pour décider si une JVM est gelée ou non. Lorsqu'une JVM gelée est détectée, le Wrapper est alors capable de redémarrer automatiquement la JVM pour remettre le système en service avec un délai minimum. Le Wrapper peut ensuite envoyer une notification par e-mail aux administrateurs système au cas où ils souhaiteraient vérifier que tout est de nouveau opérationnel et fonctionne normalement. Le Java Service Wrapper envoie périodiquement un ping au processus JVM (toutes les 5 secondes par défaut) et attend une réponse. Si la réponse n'arrive pas dans un délai configuré (30 secondes par défaut), alors le Wrapper déterminera qu'elle est gelée. Le Wrapper prend également en compte des éléments tels que la charge globale du système afin de s'assurer que les faux positifs sont réduits au minimum. Lorsqu'un gel est détecté, le Wrapper enregistrera quelque chose comme ce qui suit dans le fichier journal :
Le Wrapper vous aide à détecter les problèmes critiques, notamment : |
Aperçu technique |
||||||||||||||||||||||||||||||||||||||||||||
|
La détection des gels est activée par défaut.
Elle tentera d'envoyer un ping à la JVM toutes les 5 secondes
puis d'expirer après 30 secondes sans réponse.
Ces deux intervalles sont configurables.
Si vous définissez la propriété wrapper.
|
Référence : Gels |
|
Le Java Service Wrapper fournit un ensemble complet de propriétés de configuration qui vous permettent d'adapter le Wrapper à vos besoins exacts. Veuillez consulter la documentation des propriétés individuelles pour découvrir toutes les possibilités au-delà des exemples présentés ci-dessus.
|











