У меня есть PoolingHttpClientConnectionManager
, где я хочу установить максимальное количество соединений для каждого маршрута. Я делаю это в следующем виде:Как установить setMaxPerRoute в PoolingHttpClientConnectionManager?
poolingHttpClientConnectionManager.setDefaultMaxPerRoute(5);
poolingHttpClientConnectionManager.setMaxPerRoute(new HttpRoute(HttpHost.create(url)), 3);
где, например, мой url
является https://repo.maven.apache.org/maven2
. Итак, у меня есть максимальный максимум по маршруту 5 и 3 на определенный URL. Тогда, если я позвоню
poolingHttpClientConnectionManager.getStats(new HttpRoute(HttpHost.create(url)));
я получаю в результате PoolStats
с max = 3
, так что все нормально сейчас.
Но когда я создаю клиента с менеджером Пулы соединений и вызвать тот же URL можно увидеть в журналах:
PoolingHttpClientConnectionManager - Connection leased: [id: 0][route: {s}->https://repo.maven.apache.org:443][total kept alive: 0; route allocated: 1 of 5; total allocated: 1 of 200]
Как я могу видеть, что это все еще использует 5 соединений, как максимум для этого примера URL. Итак, мой вопрос в том, как настроить максимальное количество соединений на какой-то маршрут, чтобы заставить его работать?