RestTemplate (или WebClient) для каждого сокета назначения и время ожидания подключения - PullRequest
0 голосов
/ 24 октября 2018

Есть ли способ с клиентом (RestTemplate или более новым WebClient) установить для каждого сокета назначения или подключить тайм-ауты?Например, в веб-службе агрегации API, где я общаюсь с несколькими различными службами / хостами, часто желательно иметь разные тайм-ауты сокетов в зависимости от того, являются ли службы внутренними или внешними / сторонними.Единственное решение, которое я знаю (с RestTemplate, я не использовал WebClient), это создать отдельный RestTemplate с другим тайм-аутом сокета / соединения (и сделать это для каждого хоста, для которого требуется другой тайм-аут),

Это довольно раздражает, потому что количество кода настройки, необходимого для RestTemplate, настроенного с HttpComponents, нетривиально, и необходимость добавлять @Qualifier при каждом использовании RestTemplate инъекции также не-идеалом.Кроме того, тот факт, что HttpComponents допускает максимальное количество подключений и максимальное количество маршрутов к хосту, подразумевает, что один RestTemplate, взаимодействующий со всем исходящим трафиком, является ожидаемым использованием.

...