Tomcat9 최대 사용자 늘리는법(maxTotal, maxWaitMillies)
- Project/iRT
- 2020. 11. 24.
데이터베이스와 애플리케이션을 효율적으로 연결하는 커넥션 풀(connection pool) 라이브러리는 웹 애플리케이션에서 필수 요소이다. 톰캣은 tomcat-dbcp.jar 이 케넥션 풀 라이브러리다.
tomcat9 에 있는 DBCP는 버전이 2이고. 버전2는 DBCP 속성의 이름이 바꼈다.
[DBCP1.x와 DBCP 2.x의속성이름 차이]
[DBCP 대표적인 속성과 설명]
Tomcat9를 밑 버전을 쓰다가 Tomcat9를 사용하였는데 속성 이름으로 maxActive, maxWait를 사용하여 warning이 발생하였다. 해당 속성이 적용이 안되고 maxTotal의 기본값 8로 세팅이 돼 버렸다. 많은 사용자가 들어와야 하는데 8명만 들어올수 있으니 문제가 발생하였다.
16-Nov-2020 15:29:48.327 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = pdms Property maxActive is not used in DBCP2, use maxTotal instead. maxTotal default value is 8. You have set value of "200" for "maxActive" property, which is being ignored.
16-Nov-2020 15:29:48.327 WARNING [main] org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory.getObjectInstance Name = pdms Property maxWait is not used in DBCP2 , use maxWaitMillis instead. maxWaitMillis default value is -1. You have set value of "5000" for "maxWait" property, which is being ignored.
server.xml에 속성이름을 maxActive -> maxTotal, maxWait -> maxWaitMilles로 변경하여 이슈를 해결하였다. 톰캣실행할때 warning도 발생안했다.
maxWaitMilles 속성은 커넥션풀을 다 사용되고 있는 상황에서 요청이 들어올때 그 요청을 바로 막지 않고 얼마나 기다리게 할지 정하는 것이다.
참고 사이트 : d2.naver.com/helloworld/5102792
'Project > iRT' 카테고리의 다른 글
[AWS] 공인 IP와 CIDR IP찾고 인바운드/아웃바운드 개념과 방화벽 오픈 하는법 (0) | 2021.02.22 |
---|---|
톰캣(Tomcat), 자바 서비스(Java Service) 힙(heap) 메모리 사이즈 늘리기 법 (0) | 2021.01.28 |
[Oracle] 지원되지 않는 문자집합(클래스 경로에 orai18n.jar 추가) 에러원인과 해결법 (0) | 2020.09.29 |
[AWS] EC2 T2 인스턴스 CPU 크레딧에 대해서, 크레딧 모니터링 방법 (0) | 2020.09.28 |
[AWS] RDS 세션킬(session kill) 하는 방법 (0) | 2020.09.24 |