Problème d'expiration du délai de connexion Spring Boot avec la base de données
Résumé du problème
Applications Spring Boot utilisant Spring Data JPA et Hibernate avec MySQL peuvent rencontrer des erreurs de délai de connexion. Plus précisément, le message d'erreur « CommunicationsException : le dernier paquet reçu avec succès du serveur remonte à plus de 4 millisecondes » indique que la connexion entre l'application et la base de données a expiré.
Solution possible Utilisation d'autoReconnect
En utilisant spring.datasource.testonborrow=true et spring.datasource.validationQuery=SELECT 1 est une solution viable, elle n'est pas recommandée. Une meilleure approche consiste à configurer le pool de connexions de manière appropriée.
Solution recommandée : configuration du pool de connexions
Définir le nombre maximum de Connexions :
Définir la connexion initiale et inactive Limites :
Activer la connexion Validation :
Définir la période de validation et l'inactivité Délai d'expiration :
En configurant le pool de connexions de cette manière, les connexions sont validées périodiquement, les connexions inactives sont purgées régulièrement et de nouvelles les connexions sont acquises lorsque cela est nécessaire. Spring Boot gère automatiquement le processus de reconnexion, garantissant que les connexions sont toujours disponibles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!