접속 풀 고급 속성 편집

접속 풀 고급 속성 편집 페이지에서는 연결 누수를 진단하고 사용 편의성을 높이는 속성을 지정할 수 있습니다.

접속 풀 고급 속성 편집 페이지에 포함된 옵션은 다음과 같습니다.

기본값 로드

기본값이 있는 설정을 해당 기본값으로 복원하는 단추입니다. 기본값이 없는 설정은 변경되지 않습니다.

풀 이름

접속 풀의 이름입니다. 이름은 읽기 전용 필드입니다. 새 JDBC 접속 풀을 생성할 때 접속 풀 이름만 지정할 수 있습니다.

명령문 시간 초과

비정상적으로 길게 실행되는 질의를 종료하기 전까지의 시간 길이(초)입니다. GlassFish Server에서는 명령문을 생성할 때 QueryTimeout을 설정합니다. 값 –1은 옵션이 사용 안함으로 설정됩니다. 기본값은 -1입니다.

명령문 캐시 크기

가장 오래 전에 사용됨(LRU) 캐싱 방식을 사용하여 캐시할 명령문 수입니다. 0 값은 명령문 캐싱을 사용 안함으로 설정합니다. 기본값은 0입니다.

초기 SQL

풀에서 접속이 생성될 때마다(재사용되지 않음) 실행할 SQL 문자열입니다. 이 문자열이 실행되면 접속 상태가 초기화됩니다.

SQL 추적 리스너

응용 프로그램에서 실행한 SQL 명령문을 추적하도록 지정하는 리스너 구현 클래스 이름의 콤마로 구분된 목록입니다. 리스너 클래스는 org.glassfish.api.jdbc.SQLTraceListener 인터페이스를 구현해야 합니다. 리스너를 사용하면 SQL 문에 대한 로그 메시지를 쉽게 필터링하고 관리자가 명령문을 분석하도록 할 수 있습니다.

JDBC 객체 래핑

이 옵션을 사용으로 설정하면 응용 프로그램이 Statement, PreparedStatement, CallableStatement, ResultSet, DatabaseMetaData에 대한 래핑된 JDBC 객체를 가져옵니다. 이 옵션은 기본적으로 사용으로 설정되어 있습니다.

풀링

풀에 대한 접속 풀링을 사용으로 설정합니다. 이 옵션은 기본적으로 사용으로 설정되어 있습니다.

최대 1회 검증 기간

접속을 최대 한 번 검증하기 위해 연속된 요청 간의 시간 간격(초)을 지정합니다. 이 속성을 적절한 값으로 설정하면 접속의 검증 요청 횟수가 최소화됩니다. 기본값은 0입니다. 값이 0이면 속성이 사용으로 설정되지 않습니다.

접속 누수 시간 초과

접속 풀의 접속 누수를 추적하는 시간(초)입니다. 이 필드를 사용하여 응용 프로그램에서 발생할 수 있는 잠재적인 접속 누수를 검색합니다. 지정된 기간 내에 접속이 응용 프로그램에 의해 풀로 되돌아가지 않으면 잠재적으로 누수되고 있다고 간주되어 호출자의 스택 추적이 로깅됩니다. 값이 0이면 접속 누수 추적을 사용 안함으로 설정되어 있음을 나타냅니다. 기본값은 0입니다.

이 필드를 누수 재생과 함께 사용하여 응용 프로그램에서 잠재적인 접속 누수가 발생하는 것을 방지할 수 있습니다.

접속 누수 재생

이 옵션을 사용으로 설정하면 누수 접속 추적이 완료된 후에 누수된 접속이 풀로 복원됩니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

명령문 누수 시간 초과

접속 풀의 명령문 누수를 추적하는 시간(초)입니다. 이 필드에서는 응용 프로그램에서 발생할 수 있는 명령문 누수를 검색할 수 있습니다. 지정된 기간 내에 명령문이 응용 프로그램에 의해 풀로 되돌아가지 않으면 잠재적으로 누수되고 있다고 간주되어 호출자의 스택 추적이 로깅됩니다. 값이 0이면 명령문 누수 추적을 사용 안함으로 설정되어 있음을 나타냅니다. 기본값은 0입니다.

이 필드를 명령문 누수 재생과 함께 사용하면 응용 프로그램에서 잠재적인 접속 누수가 발생하는 것을 방지할 수 있습니다.

명령문 누수 재생

이 옵션을 사용으로 설정하면 누수 명령문 추적이 완료된 후에 누수된 명령문이 풀로 복원됩니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

생성 재시도 횟수

새 접속 생성에 실패한 경우 재시도하는 횟수입니다. 값이 0이면 접속을 다시 생성하려고 시도하지 않습니다. 기본값은 0입니다.

재시도 간격

접속을 생성하기 위한 두 시도 간의 간격(초)입니다. 기본값은 10입니다. 이 속성은 생성 재시도 횟수의 값이 0보다 큰 경우에만 사용됩니다.

느린 연결

이 옵션을 사용으로 설정하면 접속이 사용될 경우에만 물리적 접속이 논리 모음과 연관됩니다. 또한 트랜잭션이 완료되고 구성 요소 메소드가 종료되면 연관 해제되어 물리적 접속을 재사용할 수 있습니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

지연 접속 참여

이 옵션을 사용으로 설정하면 실제로 리소스가 메소드에 사용될 경우에만 리소스가 트랜잭션에 등록됩니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

스레드와 연결

이 옵션을 사용으로 설정하면, 접속이 스레드와 연관되어 접속에서 같은 스레드가 필요할 때 해당 스레드에 이미 연관된 접속을 재사용함으로써 풀에서 접속을 가져올 때 오버헤드 발생이 방지됩니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

접속 일치

이 옵션을 사용으로 설정하면 풀에서 선택하는 접속이 특정 인증서가 있는 접속과 일치해야 합니다. 이 옵션은 여러 개의 사용자 인증서가 있는 응용 프로그램에서 접속 풀이 사용되는 경우 사용으로 설정해야 합니다. 이 옵션은 풀의 접속이 항상 같은 종류이어서 풀에서 선택된 접속을 리소스 어댑터와 일치시킬 필요가 없음을 관리자가 알고 있을 때 안전하게 사용 안함으로 설정할 수 있습니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

최대 접속 사용자 수

풀에서 재사용할 접속 횟수입니다. 접속을 지정된 횟수만큼 재사용한 다음에는 해당 접속이 닫힙니다. 접속이 재사용될 수 있는 횟수를 제한하여 응용 프로그램이 명령문을 종료하지 않은 경우 명령문 누수 발생을 방지할 수 있습니다. 0 값은 이 속성이 사용 안함으로 설정되었음을 의미합니다. 기본값은 0입니다.

접속 검증

이 옵션을 사용으로 설정하면 접속 검증이 필수적으로 수행되어 서버가 접속되지 않은 경우 재접속될 수 있습니다.

검증 방법

GlassFish Server에서 데이터베이스 접속을 검증하는 방법은 다음과 같습니다.

auto-commitmetadata

GlassFish Server은(는) con.getAutoCommit 또는 con.getMetaData 메소드를 호출하여 접속을 검증합니다.


주:

많은 JDBC 드라이버에서 이러한 호출의 결과를 캐시합니다. 그러므로 이러한 호출을 사용하면 경우에 따라 신뢰할 수 없는 검증이 제공될 수 있습니다. 이러한 호출의 캐시 여부를 판단하려면 드라이버 공급업체에 확인합니다.
custom-validation

GlassFish Server은(는) 사용자 정의 구현 클래스에 의해 [검증 클래스 이름] 필드에 지정된 사용자 정의 검증 방식을 사용합니다.

table

응용 프로그램에서 지정된 데이터베이스 테이블을 질의합니다. 액세스할 수 있는 테이블이 있어야 하지만 행은 없어도 됩니다. 행이 많이 있는 기존 테이블이나 이미 자주 액세스하는 테이블은 사용하지 마십시오.

테이블 이름

검증에 사용하는 데이터베이스 테이블의 이름입니다. 이 필드는 검증 방법이 table로 설정된 경우에만 적용됩니다. 드롭다운 목록에서 이름을 선택하거나 입력할 수 있습니다.

검증 클래스 이름

사용자 정의 검증 구현 클래스 이름입니다. 이 필드는 검증 방법이 custom-validation으로 설정된 경우에만 적용됩니다. 제공된 클래스 이름은 GlassFish Server에서 액세스할 수 있어야 합니다. 지정된 클래스는 org.glassfish.api.jdbc.ConnectionValidation 인터페이스를 구현해야 합니다. 드롭다운 목록에서 이름을 선택하거나 입력할 수 있습니다.

실패 시

이 옵션을 사용으로 설정하면 GlassFish Server이(가) 풀에 있는 모든 접속을 닫고 접속 실패 시 접속을 다시 설정합니다. 이 옵션을사용 안함으로 설정하면 개별 접속이 사용되는 경우에만 다시 설정됩니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

구성 요소가 아닌 호출자 허용

이 옵션을 사용으로 설정하면 서블릿 필터 및 타사 지속성 관리자와 같이 구성 요소가 아닌 호출자가 풀을 사용할 수 있습니다. 구성 요소가 아닌 호출자가 얻은 접속은 트랜잭션이 종료될 때 컨테이너에 의해 자동으로 닫히지 않습니다. 이 연결은 호출자에 의해 명시적으로 닫혀야 합니다. 이 옵션은 기본적으로 사용 안함으로 설정되어 있습니다.

관련 작업
관련 asadmin 명령
Copyright © 2005, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices