이 페이지에서 Application Server에 고급 데이터 소스 특성을 설정할 수 있습니다. 이러한 특성은 Application Server 내에서 연결을 사용자 정의하기 위해 Application Server가 데이터 소스에 적용하는 서비스를 활성화하고 구성합니다. 이러한 특성은 데이터베이스 내의 연결에 영향을 주지 않습니다.
연결별로 캐시될 수 있는 명령문의 수를 지정합니다. Application Server는 해당 명령문을 닫은 후 명령문을 캐시합니다.
명령문 캐시가 충분히 크지 않은 경우, 새 항목을 위한 공간을 만들기 위해 유용한 항목을 버립니다. 임의로 캐시를 버리는 경우를 피하기 위해 캐시 크기의 최대값을 결정하려면 특정 서버에서 이 데이터 소스를 사용하는 응용프로그램마다 고유하게 준비된 명령문의 수 및 호출 가능한 명령문(SQL 문자열, 동시성 및 화면이동 유형으로 판별됨)을 추가하십시오. 이 값은 서버 자체의 수명이 다하지 않는 한 특정 연결에서 캐시로 처리가 가능한 명령문의 최대 수입니다. 캐시 크기를 이 값으로 설정하면 캐시 버리기가 없습니다. 일반적으로 명령문 수가 많은 응용프로그램에는 큰 캐시를 구성하십시오.
Application Server가 특정 명령문을 캐시하지 않도록 하려면 명령문의 풀가능성 힌트를 false로 구성하십시오. 풀가능성 힌트가 false로 설정되면 Application Server가 명령문을 캐시하지 않습니다. 응용프로그램이 런타임 시에 명령문 풀가능성 힌트를 지정합니다.
테스트 응용프로그램에서, 명령문 캐시를 조정하면 처리량이 10% - 20% 개선됩니다. 하지만, 잠재적인 자원 한계로 인하여 이런 작업이 항상 가능하지 않을 수도 있습니다.
데이터 유형 | 정수 |
기본값 | 기본값은 데이터베이스에 따라 다릅니다. 일반적으로, 이 값은 10입니다. 각각의 최신 수정사항이 없는 Informix® 버전 7.3, 9.2, 9.3 및 9.4의 경우, 기본값은 0이어야 합니다. 기본값 0은 캐시문이 없음을 의미합니다. |
이 옵션을 선택하면, Application Server는 다중 스레드에서 액세스 존재를 발견합니다.
Application Server의 연결 풀(연결 풀 검색 기준에 사용자 이름 및 암호가 포함되지 않음)에서 검색된 정확한 일치가 존재할 수 없음을 표시합니다. 대신, DataStoreHelper 클래스의 doConnectionSetupPerTransaction()에서 연결 재인증이 수행됩니다. Application Server는 런타임 시 연결 재인증 구현을 제공하지 않습니다. 따라서 이 상자를 선택하면, DataStoreHelper 클래스를 확장하여 재인증이 발생하는 doConnectionSetupPerTransaction() 메소드의 구현을 제공해야 합니다. 이 프로세스를 완료하지 않으면, 사용 불가능한 연결을 리턴할 수 있습니다. 자세한 정보는 com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction 메소드에 대한 API 문서를 참조하십시오.
이 옵션을 선택하면, Application Server를 사용하여 JMS(Java™ Messaging Service)가 이 데이터 소스에서 최적화된 연결을 가져올 수 있습니다. 이 특성은 JDBC(Java Database Connectivity) 응용프로그램이 CMP(Container-Managed Persistence) 응용프로그램과 연결을 공유하지 않도록 합니다.
컨테이너가 트랜잭션과 메소드의 경계에 걸쳐 응용프로그램이 활성 상태를 유지하는 연결 핸들인 캐시 핸들을 추적하는지 여부를 지정합니다. 이 특성을 사용하면 연결 문제점을 디버그할 수 있지만 추적 처리로 실행 시간 중에 과도한 성능 오버헤드가 발생할 수 있습니다.
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
응용프로그램이 트랜잭션 컨텍스트 없이 연결을 확보할 때 컨테이너가 활동 로그에 항목을 발행하는지 여부를 지정합니다. 이는 Java EE(Java Platform, Enterprise Edition) 프로그래밍 모델 연결 요구사항에 대한 예외입니다.
Application Server가 데이터 저장소 헬퍼에 정의된 오류 맵핑 기능을 사용하여 오류를 식별하도록 지정합니다. 그러면 Application Server가 JDBC 드라이브에서 발생된 예외를 데이터 저장소 헬퍼의 오류 맵에 정의된 예외로 바꾸지 않습니다.
Application Server가 데이터 저장소 헬퍼에 정의된 오류 맵핑 기능을 사용하여 오류를 식별하도록 지정합니다. 그러면 Application Server가 JDBC 드라이브에서 발생된 예외를 데이터 저장소 헬퍼의 오류 맵에 정의된 예외로 바꿉니다.
연결 관리자가 데이터베이스에 새로 작성된 연결을 테스트할지 지정합니다.
첫 번째 사전 테스트 조작이 실패한 후 데이터베이스에 대한 초기 연결을 재시도할 횟수를 지정합니다.
새 연결 유효성 검증을 선택하면, 이 옵션은 초기 시도에 실패하는 경우 Application Server가 연결을 재시도하기 전에 대기하는 시간(초)을 지정합니다.
연결 관리자가 풀 연결을 응용프로그램에 리턴하기 전에 풀 연결의 유효성을 테스트할지 지정합니다.
기존 풀 연결 사전 테스트를 선택하면, 이 옵션은 연결을 유효성 검증하기 위해 JDBC 드라이버에 할당할 시간(초)을 지정합니다.
Application Server가 JDBC 드라이버를 사용하여 연결의 유효성을 검증하도록 지정합니다. 이 옵션을 사용하려면 JDBC 제공자가 JDBC 4.0 이상을 지원해야 합니다.
Application Server가 연결을 테스트하기 위해 데이터베이스에 전송하는 SQL 문을 지정합니다. 성능에 영향을 거의 미치지 않는 조회를 사용하십시오.
Application Server가 가져오기/사용/닫기/연결 패턴을 사용하도록 지정합니다. 이렇게 하면 Application Server의 연결 풀링이 동일한 트랜잭션에 있는 연결을 공유할 수 있습니다. 이 최적화 패턴을 사용하면 연결 시 여러 연결 특성을 사용하더라도 트랜잭션에서 하나의 연결을 공유할 수 있습니다.
이기종 풀링 기능을 사용하면 다양한 사용자 정의 특성을 정의할 수 있도록 데이터소스를 확장하거나, 응용프로그램이 데이터소스의 비코어 특성을 대체할 수 있습니다.
자동 클라이언트 리라우트 재시도 간의 시간(초)을 지정합니다.
서버와의 1차 연결에 실패하는 경우 자동 클라이언트 리라우트 기능이 시도하는 연결 재시도의 최대 수를 지정합니다. 클라이언트 재라우트의 재시도 간격이 설정된 경우에만 특성이 사용됩니다.
host1,host2
5000,50001
DB2 클라이언트 리라우트 서버 목록을 JNDI 네임스페이스에 바인드하는 데 사용되는 JNDI 이름을 지정합니다. 대체 서버 정보가 메모리에 없으면 DB2 데이터베이스 서버가 이 이름을 사용하여 대체 서버 이름 목록을 조회합니다. 유형 2 데이터 소스에는 이 옵션이 지원되지 않습니다.
연결 테스트에만 사용됩니다. true로 설정되면 연결 테스트가 실행된 후 클라이언트 리라우트 서버 목록 JNDI 이름이 JNDI 네임스페이스에서 바인드 해제됩니다.