page no. 96404868
- 기능 설명
- 제품 내 DB Connection Pool을 사용할 경우 java파일을 생성하지 않도록 개선했습니다.
- 제품 내 DB Connection Pool을 사용할 경우 java파일을 생성하지 않도록 개선했습니다.
- 사용 방법
- Repository DB 커넥션 풀 설정 및 해지는 matrix.properties 파일에서 matrix.pooluse="true" 혹은 matrix.pooluse="false" 로 설정한 후에 WAS를 재기동합니다.
- 타겟DB Connection Pool은 [ Admin > 자원관리 > 데이터베이스관리 ] 에서 DB Pool 사용에 체크 혹은 체크 해제로 설정할 수 있습니다
참고 사항
- Repository DB, 타겟 DB 모두 같은 Connection Pool 옵션값을 사용합니다.
단, DB최소 연결 수 DB최대 연결 수는 Admin에서 설정합니다.
커넥션 풀 사용 옵션은 Dbcp 1.4버젼 기반으로 합니다.
Dbcp1.4 옵션명 옵션 설명 matrix.properties 설정방법 빈값일 경우 제품내 설정 기본값 비고 minIdle 풀에서 유지할 최소 유휴 연결 수 matrix.pool.minidle="숫자" 10 하위 호환성 값 10 maxIdle 풀에서 유지할 수 있는 최대 유휴 연결 수 matrix.pool.maxidle="숫자" 설정하지 않음 설정하지 않을 경우 dbcp에서는 8로 설정 maxActive 풀에서 허용되는 최대 활성 연결 수 matrix.pool.maxactive="숫자" 50 하위 호환성 값 50 maxWait 풀에서 연결을 가져오기 위해 대기할 최대 연결 시간 matrix.pool.maxwait="숫자" -1 하위 호환성 값이-1이며 무한정 대기한다. initialSize 풀을 초기화할 때 생성할 연결 수 설정 방법 없음 설정하지 않음 설정하지 않을 경우 dbcp에서는 0으로 설정 validationQuery 데이터베이스 연결이 유효한지 확인하기 위해 사용할 SQL 설정 방법 없음 (자동으로 쿼리 생성) 자동으로 쿼리 생성 testOnBorrow 데이터베이스 연결을 풀에서 빌릴때 유효성 검사를 할지 여부를 설정 matrix.pool.testonborrow="true" or "false" false 이 옵션은 확실한 커넥션을 보장하지만 DB부하를 주는 옵션이다. testWhileIdle 주기적으로 유휴 연결을 검사할지 여부 matrix.pool.testwhileidle="true" or "false" 설정하지 않음 설정하지 않을경우 dbcp에서는 false로 설정 timeBetweenEvictionRunsMillis 유휴 연결의 제거를 위한 검사 주기를 설정 matrix.pool.timebetweenevictionrunsmillis="숫자(밀리초)" 설정하지 않음 설정하지 않을경우 dbcp에서는 -1로 설정됨. minEvictableIdleTimeMillis 유휴 연결을 풀에서 제거하기 전에 허용되는 최소 유휴 시간을 설정 matrix.pool.minevictableidletimemillis="숫자(밀리초)" 설정하지 않음 설정하지 않을경우 dbcp에서는 30분(1800000)으로 설정됨. Db Connection Pool 생성시 커넥션 풀 생성이 Matrix.log 로그에 info레벨로 출력되며 설정정보가 포함되어 있습니다.
주의 사항
사용시 matrix-service , maf , Admin 의존성 버전을 맞춰주세요.
변경 전 변경 후 릴리즈 번호 1. WEB-INF\classes\matrix\pools\에 Java파일을 생성합니다. 2. Db Connection Pool 사용시 "Connection (커넥션코드) : Before: NumActive = 사용중 커넥션 갯수, NumIdle = 유후 커넥션 갯수" 로그가 Matrix.log에 출력됩니다.
예) Connection (DBF65901E94971452E89EE5A73EED50B79) : Before: NumActive = 1, NumIdle = 21. WEB-INF\classes\matrix\pools\에 Java파일을 생성하지 않습니다.
2. Db Connection Pool 사용시 " [AudDbPool][커넥션코드] Connection : Before: NumActive = 사용중 커넥션 갯수, NumIdle = 유후 커넥션 갯수" 로그가 Matrix.log에 출력됩니다.
e.g) [AudDbPool][DBF65901E94971452E89EE5A73EED50B79] Connection : Before: NumActive = 1, NumIdle = 23. DB Connection Pool 생성 시 아래 로그가 생성됩니다.
4. DB Connection Pool 해제 시 아래 로그가 생성됩니다.
5. DB Connection Pool에서 커넥션 유효성 검사시 Debug모드일경우 아래 로그가 생성됩니다.
유효성 검사 예시
1) matrix.pool. testonborrow ="true"
- 커넥션 획득전에 유효성 쿼리 호출
2) matrix.pool.testwhileidle="true"
matrix.pool. timebetweenevictionrunsmillis="60000" #60 초마다 커넥션 검사7.0.500.20240926
기능 정보 |
|
|
|
|
|
|
|
---|---|---|---|---|---|---|---|
시작 버전 정보 |
의존성이 설정되어 있으므로 반드시 해당 버전 이상으로 설정 바랍니다.
|
샘플 정보
- 샘플 URL :
- 샘플 파일