首页 > 解决方案 > 每个目标套接字的 RestTemplate(或 WebClient)和连接超时

问题描述

有没有办法让客户端(RestTemplate或更新的WebClient)设置每个目标套接字或连接超时?例如,在 API 聚合 Web 服务中,我与几个不同的服务/主机通信,通常希望根据服务是内部还是外部/第 3 方来设置不同的套接字超时。我知道的唯一解决方案(使用RestTemplate,我没有使用过WebClient)是用不同的套接字超时/连接超时实例化一个单独RestTemplate的(并为每个需要不同超时的主机执行此操作)。

RestTemplate这相当烦人,因为配置 with所需的设置代码量HttpComponents并不简单,并且@Qualifier每次使用RestTemplate注入时都必须添加也不理想。此外,HttpComponents允许最大总连接数和最大路由到主机的事实意味着一个 RestTemplate 与所有出站流量交谈是预期的使用。

标签: springresttemplateapache-httpcomponents

解决方案


推荐阅读