In order to configure RestTemplate I use the following configuration:
HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory(HttpClients.createDefault()); httpRequestFactory.setConnectTimeout(connectionTimeoutMs); httpRequestFactory.setConnectionRequestTimeout(readTimeoutMs); httpRequestFactory.setReadTimeout(readTimeoutMs); RestTemplate restTemplate = new RestTemplate(httpRequestFactory); I understand the purpose of connection and read timeouts. But I don't understand the purpose of connection request timeout. It also not clear from Javadoc what does it mean. Could you please explain it ?