Mysql
 sql >> Base de données >  >> RDS >> Mysql

Configuration de Tomcat à l'aide de DBCP

Étant donné que DBCP garde les connexions mysql retournées ouvertes pour les demandes de connexion à venir, elles sont victimes du Délai d'expiration du serveur MySQL .

DBCP a un certain nombre de fonctionnalités qui peuvent aider (peuvent être utilisées à partir de Tomcat 5.5 IIRC).

validationQuery="SELECT 1"
testOnBorrow="true"

La validation s'assure qu'une connexion est valide avant de la renvoyer à une webapp exécutant la méthode 'borrow'. Le drapeau, bien sûr, active cette fonctionnalité.

Si le timeout (8 heures je crois) est écoulé et que la connexion est morte, alors une nouvelle connexion est testée (s'il n'y en a plus, elle est créée) et fournie à la webapp.

Autres approches possibles :

  1. utilisez le testWhileIdle="true" DBCP dans vos paramètres de ressources pour vérifier également les connexions inactives avant qu'une demande effective ne soit détectée.

  2. Utilisez les 'connectionProperties' pour renforcer votre connexion MySQL (par exemple autoReconnect/autoReconnectForPools=true )