Изучал библиотеку пулов соединений HikariCP, в настоящее время в приложении мы используем Apache DBCP2 для предоставления пула соединений, что позволяет настроить кэш подготовленных состояний на уровне пула соединений, указав следующие свойства:
<property name="poolPreparedStatements" value="true"/>
<property name="maxOpenPreparedStatements" value="20"/>
НоHikariCP ясно упоминает в вики, что такая функция не поддерживается в библиотеке, и вместо этого использует соответствующий драйвер jdbc для настройки кэша для подготовленного заявления.
Поскольку пулы соединений будут общими для всех потоков, я думаю, что кэш уровня соединенийдля подготовленных заявлений будет способ пойти, я не уверен в поведении кеша на уровне jdbcdriver, если он выполняет какую-то блокировку для подготовленного заявления, вызывая некоторое раздор?
Есть предложения, по которымЕсли приложение должно обрабатывать большие объемы запросов как часть процедуры, которая будет выполняться ежедневно?