使用Spring Rest Template时,HttpConnection的默认保持活动时间

我想知道在通过Spring rest Template创建新连接之前,HttpConnection在不活动时保持活动多长时间。 我查看了默认的连接超时和读取超时参数,但我相信这些是在由于某些故障等原因未建立连接时在连接超时的上下文中使用的。

我正在寻找的是,如果没有活动(或)不活动,连接保持多长时间,以及如何通过Spring Rest Template(或)底层机制来配置它。

默认情况下, RestTemplate使用SimpleClientHttpRequestFactory ,它依次打开Java的HttpURLConnection ,默认情况下,它支持在某些条件下保持活动状态。 如果您想要更好地控制连接的处理方式,可以使用HttpComponentsClientHttpRequestFactory创建restTemplate,它使用Apache HttpClient库,例如:

 @Bean RestTemplate restTemplate(SimpleClientHttpRequestFactory factory) { return new RestTemplate(factory); } 

您还可以在此处查看一些讨论:

如何重用HttpUrlConnection?

Java中的持久HttpURLConnection

如何在multithreading环境中有效地使用RestTemplate?