Я использую RestClient
для подключения к удаленному JSON API. Раньше, в Spring 3.0, я использовал Commons HTTPClient. Я обнаружил, что производительность была низкой из-за большого количества блокировок в старом многопоточном диспетчере соединений.Настройка Apache HttpComponents PoolingClientConnectionManager для Spring Web RestTemplate
Теперь я хочу попробовать Apache HttpComponents 4.2, поскольку, похоже, они исправили блокировку. Я хотел бы использовать PoolingClientConnectionManager
в качестве параметра конструктора для DefaultHttpClient
, который будет автоуведомлен для разных классов.
Проблема заключается в настройке диспетчера соединений PoolingClientConnectionManager
. Я хочу большое количество одновременных соединений с поставщиком JSON API. Они используют HttpRoute
объекты для представления имени хоста. Но, как описано в http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/conn/PoolingClientConnectionManager.html, PoolingClientConnectionManager
использует метод setMaxPerRoute(HttpRoute, int maxConnections)
.
Как настроить диспетчер соединений файл Spring.xml, поскольку он не использует простые сеттеры?