Как ограничить количество виртуальных потоков, чтобы избежать большого количества подключений к БД?JAVA

Программисты JAVA общаются здесь
Anonymous
Как ограничить количество виртуальных потоков, чтобы избежать большого количества подключений к БД?

Сообщение Anonymous »

В настоящее время я использую Executors.newFixedThreadPool для параллельного выполнения большого количества задач.

Код: Выделить всё

try(ExecutorService executorService = Executors.newFixedThreadPool(10)) {
List resultFutures = executorService.invokeAll(tasks);
for (Future rf: resultFutures ) {
....
}
executorService.shutdown();
}
Каждая задача открывает соединение с БД.
Я хочу использовать для этого виртуальные потоки (Executors.newVirtualThreadPerTaskExecutor()).
Но это может привести к большому количеству подключений к БД.
Я искал, но не нашел способа ограничить количество виртуальных потоков.
Какой способ лучше как справиться с этой ситуацией?

Подробнее здесь: https://stackoverflow.com/questions/791 ... onnections

Вернуться в «JAVA»