WebSphere Application Server 데이터 소스 특성

이 페이지에서 애플리케이션 서버에 고급 데이터 소스 특성을 설정할 수 있습니다. 이러한 특성은 애플리케이션 서버 내에서 연결을 사용자 정의하기 위해 애플리케이션 서버가 데이터 소스에 적용하는 서비스를 활성화하고 구성합니다. 이러한 특성은 데이터베이스 내의 연결에 영향을 주지 않습니다.

이 관리 콘솔 페이지에 액세스하려면 다음 경로 중 하나를 완료하십시오.
  • 자원 > JDBC > 데이터 소스 > data_source > WebSphere Application Server 데이터 소스 특성
  • 자원 > JDBC > JDBC 제공자 > JDBC_provider > 데이터 소스 > data_source > WebSphere Application Server 데이터 소스 특성
  • 애플리케이션 > 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > application_name > 애플리케이션 범위 자원 > data_source > Websphere Application Server 데이터 소스 특성.

명령문 캐시 크기

연결별로 캐시될 수 있는 명령문의 수를 지정합니다. 애플리케이션 서버는 해당 명령문을 닫은 후 명령문을 캐시합니다.

WebSphere® Application Server 데이터 소스는 활성화된 연결에서 사용되지 않는 해당 명령문을 캐시하여 준비된 명령문 및 호출 가능한 명령문의 처리를 최적화합니다. 두 명령문은 모두 애플리케이션과 데이터 저장소 간 트랜잭션의 성능을 최대화하는 데 도움이 됩니다.
  • 준비된 명령문은 PreparedStatement 오브젝트에 저장된 사전 컴파일 SQL 문입니다. 애플리케이션 서버는 이 오브젝트를 사용하여 런타임이 결정하는 값을 사용하여 애플리케이션 런타임에서 필요로 하는 대로 SQL 문을 여러 번 실행합니다.
  • 호출 가능한 명령문은 스토어드 프로시저(태스크를 수행하여 결과를 리턴하는 사전 컴파일된 일련의 명령문)에 대한 호출을 포함하는 SQL 문입니다. 명령문은 CallableStatement 오브젝트에 저장됩니다. 애플리케이션 서버는 이 오브젝트를 사용하여 런타임이 결정하는 값을 사용하여 애플리케이션 런타임에서 필요로 하는 대로 스토어드 프로시저를 여러 번 실행합니다.

명령문 캐시가 충분히 크지 않은 경우, 새 항목을 위한 공간을 만들기 위해 유용한 항목을 버립니다. 캐시 버리기와 같은 경우를 피하기 위해 캐시 크기의 최대값을 결정하려면 SQL 문자열, 동시성 및 화면이동 유형으로 판별된 대로 특정 서버에서 이 데이터 소스를 사용하는 애플리케이션마다 고유하게 준비된 명령문의 수 및 호출 가능한 명령문을 추가하십시오. 이 값은 서버 자체의 수명이 다하지 않는 한 특정 연결에서 캐시로 처리가 가능한 명령문의 최대 수입니다. 캐시 크기를 이 값으로 설정하면 캐시 버리기가 없습니다. 일반적으로 명령문 수가 많은 애플리케이션에는 큰 캐시를 구성하십시오.

[AIX Solaris HP-UX Linux Windows][IBM i]또한 Tivoli® Performance Viewer를 사용하여 캐시 버리기를 최소화할 수도 있습니다. 들어오는 클라이언트 요청 수를 나타내는 표준 워크로드를 사용하고 수정된 수의 반복을 사용하고 구성 설정의 표준 세트를 사용하십시오.
참고: 명령문 캐시가 클수록 많은 시스템 자원이 지연됩니다. 그러므로 숫자를 너무 높게 설정하면, 시스템이 여러 개의 준비된 명령문을 열 수 없기 때문에 자원이 부족할 수 있습니다.

애플리케이션 서버가 특정 명령문을 캐시하지 않도록 하려면 명령문의 풀가능성 힌트를 false로 구성하십시오. 풀가능성 힌트가 false로 설정되면 애플리케이션 서버가 명령문을 캐시하지 않습니다. 애플리케이션이 런타임 시에 명령문 풀가능성 힌트를 지정합니다.

테스트 애플리케이션에서, 명령문 캐시를 튜닝하면 처리량이 10% - 20% 개선됩니다. 하지만 잠재적인 자원 한계로 인하여 이러한 튜닝 프로세스가 항상 가능하지 않을 수도 있습니다.

정보
데이터 유형 정수
기본값 기본값은 데이터베이스에 따라 다릅니다. 일반적으로, 이 값은 10입니다. 각각의 최신 수정사항이 없는 Informix® 버전 7.3, 9.2, 9.3 및 9.4의 경우, 기본값은 0이어야 합니다. 기본값 0은 캐시 명령문이 없음을 의미합니다.

멀티스레드 액세스 발견 사용 가능

선택하면, 다중 스레드가 동시에 동일한 연결 핸들을 사용하려고 시도하는 경우 다음 경고 메시지 중 하나 또는 둘 다가 WebSphere Application Server 시스템 출력 로그에 입력됩니다. 다중 스레드가 동일한 연결 핸들을 사용하려고 시도하여 문제점이 발생했다고 판단되는 경우에는 이 특성을 사용하여 연결 문제점을 디버그할 수 있습니다. 동시에 동일한 연결 핸들을 사용하는 스레드가 여러 개인 경우에 프로그래밍 모델 위반이 발생합니다.
참고: 정확한 처리 상황에 따라서, 관리 연결을 사용하면 J2CA0167W 또는 DSRA8720W 메시지 중 하나(또는 두 메시지 모두)가 발행될 수 있습니다. 멀티스레드 액세스 발견 사용이 사용 가능할 때 이들 메시지에 대해 작업 로드를 검토해야 합니다.

J2CA0167W: 다중 스레드가 동시에 동일한 연결 핸들을 사용하려고 시도하는 것이 발견되었습니다. 연결 핸들: {0}

DSRA8720W: {0}에서 멀티스레드 액세스를 발견했습니다. 스레드 ID {1} 멀티스레드 액세스와 함께 마지막으로 사용되었습니다. 현재 스레드 ID: {2} 현재 스레드의 스택 추적: {3}

데이터베이스 재인증 사용

애플리케이션 서버 연결 풀(연결 풀 검색 기준에 사용자 이름 및 비밀번호가 포함되지 않음)에서 검색된 정확한 일치가 존재할 수 없음을 표시합니다. 대신, DataStoreHelper 클래스의 doConnectionSetupPerTransaction()에서 연결 재인증이 수행됩니다. 애플리케이션 서버는 런타임 시 연결 재인증 구현을 제공하지 않습니다. 따라서 이 상자를 선택하면, DataStoreHelper 클래스를 확장하여 재인증이 발생하는 doConnectionSetupPerTransaction() 메소드의 구현을 제공해야 합니다. 이 프로세스를 완료하지 않으면, 사용 불가능한 연결을 리턴할 수 있습니다. 자세한 정보는 com.ibm.websphere.rsadapter.DataStoreHelper#doConnectionSetupPerTransaction 메소드에 대한 API 문서를 읽어 보십시오.

연결 재인증은 서로 다른 사용자 이름 및 비밀번호를 사용하여 연결을 자주 요청하는 애플리케이션의 경우 연결을 열고 닫는 것을 감소시켜 성능 향상에 도움을 줄 수 있습니다.
참고: 맵핑 구성 별명에 TrustedConnectionMapping을 선택하면 데이터베이스 재인증을 사용할 수 없습니다.

JMS 1단계 최적화 지원 사용

이 옵션을 선택하면, 애플리케이션 서버가 JMS(Java™ Message Service)를 사용하여 이 데이터 소스에서 최적화된 연결을 가져옵니다. 이 특성은 JDBC(Java Database Connectivity) 애플리케이션이 CMP(Container-Managed Persistence) 애플리케이션과 연결을 공유하지 않도록 합니다. 이 옵션은 데이터 소스의 JDBC 제공자가 XA 제공자인 경우에는 사용할 수 없습니다.

캐시 핸들 관리

컨테이너가 트랜잭션과 메소드의 경계에 걸쳐 애플리케이션 컴포넌트가 활성 상태를 유지하는 연결 핸들인 캐시 핸들을 추적하는지 여부를 지정합니다. 이 특성을 사용하면 연결 문제점을 디버그할 수 있지만, 추적 처리로 런타임 중에 과도한 성능 문제가 발생할 수 있습니다.

관리 콘솔에서 캐시 핸들 관리 특성이 선택되어 있고 이 특성을 선택 취소하는 경우, 버전 7.0 이상 애플리케이션 서버에 있는 자원에는 필드가 더 이상 표시되지 않습니다. 이 필드는 resources.xml 파일에서 manageCachedHandles 특성이 true로 설정된 경우에만 표시됩니다. 필드를 사용할 수 있도록 하려면 resources.xml 파일에서 manageCachedHandles 항목의 값을 false에서 true로 변경하거나 wsadmin 도구에서 다음과 같은 Jython 명령을 입력하십시오.
AdminConfig.modify(myDataSourceVariable, '[[manageCachedHandles "true"]]')
참고: 버전 6.x 애플리케이션 서버에서 실행 되는 모든 자원의 경우 캐시 핸들 관리 특성이 항상 표시됩니다. 예를 들어, 노드가 버전 6.1에 있는 경우 resources.xml 파일의 항목은 관리 콘솔에 필드가 표시되는 방식에 영향을 주지 않습니다.
문제점을 디버깅하기 위한 여러 방법으로 멀티스레드 및 교차 컴포넌트 진단 경보를 사용하여 JCA(Java Connector Architecture) 프로그래밍 모델에서 위반사항을 발견하십시오. 이러한 경보를 사용하려면 서버 > 애플리케이션 서버 > application_server > 성능 > 성능 및 진단 어드바이저 구성 > 성능 및 진단 어드바이스 구성 패널에서 해당 옵션을 선택하십시오. 이러한 경보는 연결 관리자가 캐시 핸들을 관리하고, 연결 조건을 발견하고, 경보를 전송하도록 강제 실행합니다.
참고: 이러한 경보를 활성화하려면 서버 > 애플리케이션 서버 > application_server > 성능 > 성능 및 진단 어드바이저 구성 패널에서 성능 및 진단 어드바이저 프레임워크(런타임 성능 어드바이저) 사용도 선택해야 합니다.

로그 누락 트랜잭션 컨텍스트

애플리케이션이 트랜잭션 컨텍스트 없이 연결을 확보할 때 컨테이너가 활동 로그에 항목을 발행하는지 여부를 지정합니다. 이는 Java EE(Java Platform, Enterprise Edition) 프로그래밍 모델 연결 요구사항에 대한 예외입니다.

비트랜잭션 데이터 소스

애플리케이션 서버가 이 데이터 소스의 연결을 글로벌 또는 로컬 트랜잭션에 등록하지 않도록 지정합니다. 애플리케이션이 연결에서 로컬 트랜잭션을 시작하려는 경우, 연결에서 setAutoCommit(false)를 명시적으로 호출해야 하며 시작한 트랜잭션을 커미트하거나 롤백해야 합니다.
참고: 이 특성을 true로 설정하는 경우는 드물지만 JPA(Java Persistence API) 애플리케이션에서는 JTA 및 비JTA 데이터 소스 둘 다 필요합니다. 비JTA 데이터 소스인 경우, 이 특성을 true로 설정해야 합니다.

WebSphere Application Server 예외 검사 모델 사용

애플리케이션 서버가 데이터 저장소 헬퍼에 정의된 오류 맵핑 기능을 사용하여 오류를 식별하도록 지정합니다. 그러면 애플리케이션 서버가 JDBC 드라이브에서 발생된 예외를 데이터 저장소 헬퍼의 오류 맵에 정의된 예외로 바꾸지 않습니다.

WebSphere Application Server 예외 맵핑 모델 사용

애플리케이션 서버가 데이터 저장소 헬퍼에 정의된 오류 맵핑 기능을 사용하여 오류를 식별하도록 지정합니다. 그러면 애플리케이션 서버가 JDBC 드라이브에서 발생된 예외를 데이터 저장소 헬퍼의 오류 맵에 정의된 예외로 바꿉니다.

참고: 이 오류 감지 모델은 JDBC 버전 3.0 이상에서 작동됩니다.

새 연결 유효성 검증

연결 관리자가 데이터베이스에 새로 작성된 연결을 테스트할지 지정합니다.

재시도 횟수

첫 번째 사전 테스트 조작이 실패한 후 데이터베이스에 대한 초기 연결을 재시도할 횟수를 지정합니다.

재시도 간격

새 연결 유효성 검증을 선택하면, 이 옵션은 초기 시도에 실패하는 경우 애플리케이션 서버가 연결을 재시도하기 전에 대기하는 시간(초)을 지정합니다.

기존 풀 연결 유효성 검증

풀 연결을 애플리케이션으로 리턴하기 전에 연결 관리자가 풀 연결의 유효성을 테스트할지를 지정합니다.

재시도 간격

기존 풀 연결 사전 테스트를 선택하면, 이 옵션은 연결을 유효성 검증하기 위해 JDBC 드라이버에 할당할 시간(초)을 지정합니다.

JDBC 드라이버에 의한 유효성 검증

애플리케이션 서버가 JDBC 드라이버를 사용하여 연결의 유효성을 검증하도록 지정합니다. 이 옵션을 사용하려면 JDBC 제공자가 JDBC 4.0 이상을 지원해야 합니다. 이 옵션은 새 연결 유효성 검증 또는 기존 풀 연결 유효성 검증을 선택한 경우에만 사용 가능합니다.

제한시간

데이터베이스와의 연결(새 연결 또는 애플리케이션 서버가 풀한 연결) 테스트에 제한시간(초)을 지정합니다. 유효성을 검증하기 전에 제한시간이 만기되면 연결을 사용할 수 없는 것으로 간주됩니다. 여러 번의 재시도가 구성된 경우 제한시간의 전체 값이 각 재시도에 적용됩니다. 0 값은 JDBC 드라이버가 유효성 검증 시도에 제한시간을 강요하지 않음을 나타냅니다.
참고: 이 옵션은 JDBC 4.0을 따르는 JDBC 드라이버에 대해서만 사용 가능합니다.

SQL 문자열에 의한 유효성 검증(더 이상 사용되지 않음)

애플리케이션 서버가 연결을 테스트하기 위해 데이터베이스에 전송하는 SQL 문을 지정합니다. 성능에 영향을 거의 미치지 않는 조회를 사용하십시오. 이 옵션은 새 연결 유효성 검증 또는 기존 풀 연결 유효성 검증을 선택한 경우에만 사용 가능합니다.

이기종 풀링을 사용하여 가져오기/사용/닫기 연결 패턴 최적화

가져오기/사용/닫기 연결 패턴을 사용하는 애플리케이션의 데이터 소스를 최적화합니다. 이 최적화는 동일한 트랜잭션에 있는 연결을 공유하도록 데이터 소스의 연결 풀을 사용 가능하게 합니다. 이 최적화 패턴을 사용하면 연결이 다른 연결 특성을 사용하는 경우에도 트랜잭션 중 하나의 연결을 공유할 수 있습니다.

이기종 풀링 기능을 사용하면, 다양한 사용자 정의 특성을 지정할 수 있도록 먼저 데이터 소스 정의를 확장하거나 애플리케이션이 데이터 소스의 비코어 특성을 대체해야 합니다. 데이터 소스 확장에 대한 자세한 정보는 애플리케이션 레벨에서의 DB2 데이터 소스 정의 확장에 대한 정보를 참조하십시오.

참고: 이 필드는 DB2® 데이터 소스에만 사용할 수 있습니다.

클라이언트 리라우트의 재시도 간격

자동 클라이언트 리라우트 재시도 간의 시간(초)을 지정합니다.

참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

최대 클라이언트 리라우트 재시도 수

서버와의 1차 연결에 실패하는 경우 자동 클라이언트 리라우트 기능이 시도하는 연결 재시도의 최대 수를 지정합니다. 클라이언트 리라우트의 재시도 간격이 설정된 경우에만 특성이 사용됩니다.

참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

대체 서버 이름

DB2 서버의 이름 또는 대체 서버 이름 목록을 지정합니다. 둘 이상의 대체 서버 이름이 지정되면, 이름은 쉼표로 구분해야 합니다. 예를 들어, 다음과 같습니다.
host1,host2
참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

대체 포트 번호

DB2 서버의 포트 또는 대체 서버 포트 목록을 지정합니다. 둘 이상의 대체 서버 포트가 지정되면, 포트는 쉼표로 구분해야 합니다. 예를 들어 다음과 같습니다.
5000,50001
참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

클라이언트 리라우트 서버 목록 JNDI 이름

DB2 클라이언트 리라우트 서버 목록을 JNDI 네임스페이스에 바인드하는 데 사용되는 JNDI 이름을 지정합니다. 대체 서버 정보가 메모리에 없으면 DB2 데이터베이스 서버가 이 이름을 사용하여 대체 서버 이름 목록을 조회합니다. 유형 2 데이터 소스에는 이 옵션이 지원되지 않습니다.

참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

JNDI에서 클라이언트 리라우트 목록 바인드 해제

테스트 연결용으로만 사용됩니다. true로 설정하면 테스트 연결이 발행된 후 클라이언트 리라우트 서버 목록 JNDI 이름이 JNDI 네임스페이스로부터 바인드 해제됩니다.

참고: 이 필드는 DB2 데이터 소스에만 사용할 수 있습니다.

주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=udat_jdbcdatasorprops
파일 이름:udat_jdbcdatasorprops.html