Senior
Hikari Pool sa 10 konekcija, pod opterećenjem smo dobili 'connections not available'. Šta uraditi?
sobes.tech АИ
Одговор од АИ
Greška "connections not available" u HikariCP sa bazenom od 10 veza znači da su sve dostupne veze zauzete i nove zahteve ne mogu da dobiju vezu iz bazena.
Šta uraditi:
- Povećajte veličinu bazena (npr. povećajte maxPoolSize), ako stvarno opterećenje zahteva više veza.
- Proverite da li se veze pravilno zatvaraju (pozivom metode close() na Connection), u suprotnom ostaju zauzete.
- Analizirajte vreme trajanja i vreme čekanja veza (connectionTimeout), možda je potrebno povećati timeout.
- Optimizujte upite i transakcije da zauzimaju veze što kraće vreme.
- Uključite logovanje HikariCP za otkrivanje curenja veza (leakDetectionThreshold).
Primer podešavanja za povećanje bazena:
HikariConfig config = new HikariConfig();
config.setMaximumPoolSize(20); // poveća bazen na 20
HikariDataSource ds = new HikariDataSource(config);
Važno je osigurati da baza podataka i infrastruktura mogu da izdrže povećan broj veza.