-
Client Connection Pool Manager 설정(1)Spring 2020. 3. 17. 14:13
ClientConnectionPoolManager의 풀을 유지 관리하고 HttpClientConnection여러 실행 스레드의 연결 요청을 처리 할 수 있습니다. 연결은 경로별로 풀링됩니다. 이미 관리자가 풀에서 사용 가능한 영구 연결을 가지고있는 경로에 대한 요청은 완전히 새로운 연결을 만드는 대신 풀에서 연결을 임대함으로써 서비스가됩니다.
@PostConstruct private void init() { CommonUtil.sConnectTimeout = connectTimeout; CommonUtil.sSocketTimeout = socketTimeout; PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(); cm.setMaxTotal(500); //모든 경로에서 허용되는 최대 연결수입니다. cm.setDefaultMaxPerRoute(150); //호출에 의해 달리 지정되지 않은 경로에 허용 된 최대 연결 수입니다. RequestConfig config = RequestConfig.custom(). setConnectTimeout(sConnectTimeout * 1000). setSocketTimeout(sSocketTimeout * 1000).build(); hc = HttpClientBuilder.create().setDefaultRequestConfig(config).setConnectionManager(cm).build(); } public static CloseableHttpClient getLegacyHttpClient2() { return hc; }
요약하자면 Server와 연결되는 요청에 대해서 커넥션을 미리 생성해두고 풀에 저장해두었다가 필요할때 꺼내쓴다. 사용후에는 풀에 다시 반환하는 방식
'Spring' 카테고리의 다른 글
Spring Boot와 AWS로 혼자 구현하는 웹 서비스 - 2장 Spring Boot에서 테스트 코드를 작성하자 (1) 2022.02.20 [Spring] Maven, pom.xml (0) 2021.04.13 쿼리 로그 찍기 (0) 2020.11.27 iBatis, myBatis 에서 Date형 시분초 잘리는 문제 (0) 2020.10.27 [SpringBoot] 스프링 시큐리티 적용하기 (0) 2019.12.24