Skip to content

Commit 632d4b7

Browse files
committed
feat: support portal restTemplate config ConnectionTimeToLive via PortalConfig api.connectionTimeToLive (#5120)
1 parent c884de5 commit 632d4b7

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

apollo-portal/src/main/java/com/ctrip/framework/apollo/portal/component/RestTemplateFactory.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.springframework.web.client.RestTemplate;
2929

3030
import java.io.UnsupportedEncodingException;
31+
import java.util.concurrent.TimeUnit;
3132

3233
@Component
3334
public class RestTemplateFactory implements FactoryBean<RestTemplate>, InitializingBean {
@@ -58,7 +59,9 @@ public boolean isSingleton() {
5859
}
5960

6061
public void afterPropertiesSet() throws UnsupportedEncodingException {
61-
CloseableHttpClient httpClient = HttpClientBuilder.create().build();
62+
CloseableHttpClient httpClient = HttpClientBuilder.create()
63+
.setConnectionTimeToLive(portalConfig.connectionTimeToLive(), TimeUnit.MILLISECONDS)
64+
.build();
6265

6366
restTemplate = new RestTemplate(httpMessageConverters.getConverters());
6467
HttpComponentsClientHttpRequestFactory requestFactory =

apollo-portal/src/main/java/com/ctrip/framework/apollo/portal/component/config/PortalConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,10 @@ public int readTimeout() {
169169
return getIntProperty("api.readTimeout", 10000);
170170
}
171171

172+
public int connectionTimeToLive() {
173+
return getIntProperty("api.connectionTimeToLive", -1);
174+
}
175+
172176
public List<Organization> organizations() {
173177

174178
String organizations = getValue("organizations");

0 commit comments

Comments
 (0)