[WAS] DBCP resource파라미터의 의미 및 설정

|
JDBC의 커넥션 풀을 위해 DBCP를 사용할때는 최초에 설정해야 하는 주요 파라미터들이 존재한다.

이 파라미터에 설정한 값에 따라 커넥션의 갯수 등의 주요한 정보가 설정되니 확실히 알고 넘어가야 할 일이다.

그렇다면 어떠한 파라미터가 존재하고 의미를 가지는지 알아보도록 하자.(apache commons 참고)


파라미터명 기본값  설명 
defaultAutoCommit  true 자동 커밋여부의 설정 
initialSize  최초 pool 생성시의 사이즈 
maxActive  활성화된 커넥션의 최대갯수 
maxIdle  커넥션 풀 안에 유휴상태로 존재하는 커넥션의 최대갯수(음수일경우 무제한) 
minIdle  커넥션 풀 안에 유휴상태로 존재하는 커넥션의 최소갯수 
whenExhaustedAction    커넥션 풀에 사용할 수 있는 커넥션이 없을시 어떻게 동작할지 지정. 1일 경우 maxWait 지정값만큼 대기, 0은 에러, 2는 일시적 커넥션을 생성하여 사용 
maxWait  무기한  커넥션풀에 사용할 수 있는 커넥션이 존재하지 않을 경우 exception을 발생시키기 전에 커넥션을 받기 위해 기다리는 최대시간(단위 : ms, -1로 설정시 무기한, whenExhaustedAction이 1일때 사용) 
testOnBorrow  true  커넥션 풀에서 커넥션을 가져올때 커넥션의 유효여부 검증 
testOnReturn  false  커넥션 풀에 커넥션을 반환할 때 커넥션의 유효여부 검증 
testWhileIdle  false  비활성화 커넥션 추출시 유효여부를 검증하여 유효하지 않을 경우 커넥션 풀에서 제거 
validationQuery    커넥션이 정상적으로 연결되었는지 검증하는 쿼리. 반드시 select 이고 적어도 한줄의 결과값을 반환해야 한다.(SELECT 1) 
timeBetweenEvictionRunsMillis  -1  사용되지 않은 커넥션을 추출하는 쓰레드의 실행 주기를 결정. 음수일 경우 실행되지 않는다. 
numTestsPerEvictionRunsMillis   사용되지 않은 커넥션을 몇 개 검사할지 지정 
minEvictableIdleTimeMillis  1000*60*30  사용되지 않은 커넥션을 추출시 이 속성에서 지정한 시간 이상 비활성화 상태의 커넥션만 추출(음수일 경우 미적용) 
* 자주 사용한 파라미터 표시

위와 같이 다양한 파라미터가 존재한다는 것을 이번 정리를 통해 알 수 있었다. 물론 이 외에도 더 많은 파라미터가 존재하지만

사용할 법한 파라미터들만 추출했고, 자주 사용해왔던 파라미터는 따로 표시를 하였다.

'WEB' 카테고리의 다른 글

[WAS] 프로젝트별 server.xml 설정  (0) 2011.09.05
[WEB] 톰캣 설정파일을 사용한 DB연결  (0) 2010.10.09
And