Я хочу использовать параллелизм в Java, чтобы делать запросы к онлайн-API, загружать и анализировать документы ответов и загружать полученные данные в базу данных.
Стандартно ли иметь один пул потоков, в котором каждый поток запрашивает, анализирует и загружает? Другими словами, только один класс реализует Runnable
. Или более эффективно иметь, скажем, три разных пула потоков, при этом первый пул потоков выполняет запросы и отправляет их в очередь, второй пул потоков опрашивает первую очередь, анализирует и проталкивает проанализированные данные. во вторую очередь и, наконец, в третий пул, опрашивающий данные из второй очереди и загружающий в базу данных? В этом случае я бы написал три разных класса, реализующих Runnable
.