본문으로 바로가기

DB Connection Pool 과 WAS(Tomcat)

category Servlet&JSP 2020. 1. 6. 13:41

1. 커넥션풀(DBCP) 사용 이유

- 서버는 동시 정해진 동시접속자 수를 벗어날 경우 에러(예외)가 발생한다. 예외가 발생된 접속자는 더이상 처리를 할 수 없으므로, 사이드를 재 접속해야하는 불편함이 발생한다.

- JDBC를 통하여 DB에 연결하기 위해서는 드라이버(Driver)를 로드하고 커넥션(connection) 객체를 받아와야 한다.

- JDBC를 사용하면 사용자가 요청을 할 때마다 매번 드라이버를 로드하고 커넥션 객체를 생성하여 연결하고 종료하기 때문에 매우 비효율적이다.

- 이런 문제를 해결하기 위해서 커넥션풀(DBCP)를 사용한다.

 

2. 커넥션풀(DBCP)

- 웹 컨테이너가 실행되면서 커넥션(connection) 객체를 미리 풀(pool)에 생성해 둡니다.

- DB와 연결된 커넥션(connection)을 미리 생성해서 풀(pool) 속에 저장해 두고 있다가 필요할 때에 가져다 쓰고 반환한다.

- 미리 생성해두기 때문에 데이터베이스에 부하를 줄이고 유동적으로 연결을 관리 할 수 있다.



출처: https://gangzzang.tistory.com/entry/톰캣Tomcat-커넥션풀DBCP-설정 [갱짱.study]

https://brownbears.tistory.com/289