Bonjour,
j'ai un problème que j'ai déjà posté plusieurs fois mais je n'ai toujours pas réussi à le résoudre. Donc je me pose des questions. Pour résumé ma situation, j'ai une application J2EE qui tourne sous Tomcat 5.5, et il arrive que de temps en temps (en fonction de la fréquence d'utilisation de l'application), l'application ne soit plus accessible. Tomcat manager tourne toujours et je peux voir qu'il y a des servlets qui sont toujours dans les requests, et ce depuis plus de 2 jours parfois. J'ai l'impression que Tomcat ne "libère" pas ces Servlets et je me demande pourquoi. A partir d'une dizaine de Servlets "non fermées", l'application n'est plus accessible. Il est à noter que ce ne sont pas forcément les mêmes servlets qui semblent bloquer... et elles ne bloquent pas à chaque appel non plus. Mon problème est que cela se passe chez des utilisateurs et que par conséquent je ne sais pas ce qu'ils font.
Il y a des traitements qui peuvent être assez long dans l'application, et je me suis demandé si les utilisateurs n'interrompaient pas ces traitements en cours de route (fermeture de fenêtre sauvage). Dans un tel cas comment cela se passe t il au niveau des connexions à la BD? Si mes appels à la fonction de fermeture de connexion sont dans un "Finally", seront elles fermées quelque soit les interruptions brutales? Si elles ne sont pas dans un "Finally" cela peut il provenir de là?
Mon post est assez long et j'en suis désolé, mais je suis désespéré... Si quelqu'un a une idée j'en serais ravi. Qu'est ce qui peut faire que l'application n'est plus accessible? Pourquoi Tomcat n'arrête il pas ces satanées Servlets?
Merci par avance pour votre aide
Partager