Я понимаю, что установка максимального количества соединений, доступных в пуле соединений, должна быть такой же, как и ваши maxThreads, настроенные для вашего сервера Tomcat (что коррелирует с количеством запросов, которые могут быть обработаны)
Для tomcat значение по умолчанию - 200, я предполагаю, что существует максимум, который вы можете безопасно настроить для своего сервера Tomcat, прежде чем все начнет выходить из-под контроля, что, как я полагаю, также зависит от ресурсов машины, на которой он работает.
Я пытаюсь понять размер maxThreads, которые люди успешно используют, 1000 слишком велик?
Вы должны построить тесты производительности для конкретного приложения, чтобы определить оптимальные размеры. В вашем конкретном приложении могут применяться различные стратегии для работы с БД: некоторые из них освобождают соединения с БД по несколько раз за запрос, другие могут не отдавать его в течение всей обработки запроса. В первом случае вы можете настроить пул потоков больше, чем пул соединений, потому что потоки могут получать эти соединения чаще, во втором сценарии он, вероятно, должен быть почти того же размера, потому что другие запросы не могут быть обработаны и будут заблокированы при получении соединения. .
Вы можете взглянуть на Отпустите! Это отличная книга, в которой можно описать различные стратегии. Но общий совет таков: всегда пишите тесты производительности, иначе вы не сможете правильно настроить свое приложение.