Senior
Hikari Pool met 10 verbindingen, onder belasting krijgen we 'connections not available'. Wat te doen?
sobes.tech AI
Antwoord van AI
De fout "connections not available" in HikariCP met een pool van 10 verbindingen betekent dat alle beschikbare verbindingen bezet zijn en dat nieuwe verzoeken geen verbinding uit de pool kunnen krijgen.
Wat te doen:
- Verhoog de grootte van de pool (bijvoorbeeld, verhoog maxPoolSize), als de belasting daadwerkelijk meer verbindingen vereist.
- Controleer of verbindingen correct worden gesloten (door de methode close() op de Connection aan te roepen), anders blijven ze bezet.
- Analyseer de levensduur en de wachttijd van verbindingen (connectionTimeout), mogelijk moet de timeout worden verhoogd.
- Optimaliseer queries en transacties zodat ze minder tijd in beslag nemen.
- Schakel logging in voor HikariCP om lekken van verbindingen te detecteren (leakDetectionThreshold).
Voorbeeld van configuratie om de pool te vergroten:
HikariConfig config = new HikariConfig();
config.setMaximumPoolSize(20); // vergroot de pool tot 20
HikariDataSource ds = new HikariDataSource(config);
Het is belangrijk om te zorgen dat de database en infrastructuur het verhoogde aantal verbindingen aankunnen.