Sobes.tech
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.