메시지 엔드포인트로 메시지 관리

메시지 엔드포인트로 배치된 메시지 구동 Bean(MDB)의 메시지 전달을 관리합니다. 메시지 엔드포인트는 JCA(Java™ EE(Java Platform, Enterprise Edition) Connector Architecture) 버전 1.5를 준수하는 인바운드 자원 어댑터의 관리 Bean(MBean)입니다.

이 태스크 정보

Application Server는 대상인 특정 엔드포인트에서 리스너 역할을 하는 메시지 구동 Bean의 전달 관리 및 이 메시지 구동 Bean이 이용하는 EIS(Enterprise Information System) 자원의 관리를 지원할 메시지 엔드포인트 MBean을 제공합니다. 메시지 엔드포인트에 배치되는 메시지 구동 Bean은 리스너 포트에 대해 구성된 메시지 구동 Bean과 동일하지 않습니다. JCA 버전 1.5의 자원 어댑터 구성 내에 정의된 ActivationSpecification을 사용하여 메시지 엔드포인트로 사용되는 메시지 구동 Bean을 배치해야 합니다.
메시지 엔드포인트 MBean을 통해 상태가 양호한 EIS 자원과 상호작용하고 있는 청취 메시지 구동 Bean에만 메시지가 전달되도록, 애플리케이션 내의 특정 엔드포인트를 활성화 및 비활성화할 수 있습니다. 이 기능으로 EIS 자원이 예상대로 작동하지 않는 경우에 JMS 애플리케이션의 성능을 최적화할 수 있습니다. 청취 중인 메시지 구동 Bean이 상태가 양호하지 않은 자원에 대해 조작을 호출할 때에는 엔드포인트로의 메시지 전달이 일반적으로 실패합니다. 예를 들어, JCA 버전 1.5 호환의 인바운드 자원 어댑터인 메시징 제공자는 기본 메시지 구동 Bean이 응답하지 않는 데이터베이스 서버에 대해 트랜잭션을 커미트하려 시도할 때 엔드포인트에 메시지를 전달하는 데 실패할 수 있습니다.
참고: 다른 엔터프라이즈 Bean에 비즈니스 처리를 위임할 메시지 구동 Bean을 디자인하십시오. 메시지 구동 Bean의 EIS 자원에 직접 액세스하지 말고 위임 Bean을 통해 간접적으로 액세스하십시오.
메시지 엔드포인트 MBean은 자원에 액세스하는 메시지 엔드포인트를 제공할 애플리케이션에 내재된 두 가지 문제점을 경감시킵니다.
  • 실패한 메시지는 청취 엔드포인트에 다시 전달하거나 실패한 메시지를 처리하는 대체 대상으로 경로를 재지정하는 것과 같은 추가 처리가 필요합니다. 또한 자원 어댑터는 엔드포인트에 무기한으로 메시지를 재전달할 수 있습니다.
  • 메시지 경로 재지정을 위해서는 메시지 실패를 발견할 논리와 함께 실패한 메시지를 처리할 특수화된 대상(큐와 리스너)을 구현해야 합니다. 메시지 경로 재지정은 잠재적으로 오류를 유발하며 복잡도로 인해 비용이 많이 드는 작업입니다.

특정 메시지 엔드포인트를 비활성화(일시정지) 및 재활성화(재개)하는 기능은 실패할 예정인 메시지를 처리하지 못하게 관리자가 엔드포인트를 비활성화시키도록 해서 이러한 문제를 완화합니다. 메시지 엔드포인트가 비활성화되면 문제를 유발하는 자원을 수리한 후 엔드포인트를 재활성화해서 메시지 요청 처리를 재개할 수 있습니다. 문제점을 해결하는 도중에는 사용자가 엔드포인트를 호스팅하는 애플리케이션이나 자원 어댑터에 영향을 주지 않습니다.

WebSphere® MQ에 연결 중이면 활성화 스펙에서 WAS_EndpointInitialState 사용자 정의 특성을 사용하여 메시지 엔드포인트가 비활성화된 상태에서 시작되도록 할 수도 있습니다. 이 특성을 비활성으로 설정하면 메시지 구동 Bean이 대상과 연결되지만 메시지 수신을 시작하지는 않습니다. 메시지 핸들링이 시작되기 전에 특정 태스크를 완료하거나, 서비스를 시작하거나, 점검을 수행해야 함을 알고 있을 때 메시지 엔드포인트를 자동으로 비활성화하려면 이 설정을 사용하십시오. 조작 중 일시정지한 메시지 엔드포인트를 재활성화하는 방법과 동일한 방식으로 메시지 엔드포인트를 활성화합니다.

프로시저

  1. 관리 콘솔을 사용하여 메시지 엔드포인트를 호스팅하는 애플리케이션에 대한 메시지 엔드포인트 패널로 이동하십시오.
    1. 애플리케이션 > 애플리케이션 유형 > Websphere 엔터프라이즈 애플리케이션 > application_name을 선택하십시오.
    2. 런타임 패널을 선택하십시오.
    3. 메시지 엔드포인트를 선택하십시오. 애플리케이션이 호스팅하는 메시지 엔드포인트의 목록이 패널에 나열됩니다.
  2. 옵션: 일시적으로 메시지 엔드포인트에서 메시지를 처리하지 못하게 하고 문제점을 해결하십시오.
    1. 해당 엔드포인트를 선택하고 일시정지를 클릭해서 메시지 엔드포인트를 비활성화시키십시오.
    2. 메시지 엔드포인트가 비활성화되면 전달 실패의 근본 원인을 진단하고 정정하십시오.
    3. 해당 엔드포인트를 선택하고 재개를 클릭해서 메시지 엔드포인트를 재활성화시키십시오.
  3. 옵션: 비활성화된 상태에서 시작한 메시지 엔드포인트를 활성화하십시오. 해당 엔드포인트를 선택하고 재개를 클릭하십시오.

결과

메시지 엔드포인트 MBean을 사용하여 메시지 엔드포인트를 비활성화(일시정지)할 때 발생하는 동작은 메시지 엔드포인트를 관리하는 자원 어댑터, 메시지 엔드포인트의 구성, Application Server 토폴로지를 포함하여 다양한 요인에 따라 다릅니다. 관심 있는 몇 가지 특정 예는 다음과 같습니다.
  • 비지속 토픽에서 청취하는 MDB(구성에 종속): 메시지 엔드포인트의 비활성화(일시정지)가 내포하는 동작은 종종 이행 중인 기능에 따라 다릅니다. 예를 들어, 서비스 통합 버스의 비지속 토픽에서 청취하도록 메시지 구동 Bean을 구성한 경우 메시지 엔드포인트를 비활성화하면 애플리케이션 중지와 효과가 비슷하며 등록이 처리완료됩니다. 이는 메시지 엔드포인트가 일시정지된 동안에 공개되는 메시지를 메시지 구동 Bean이 수신하지 않음을 의미합니다.
  • 클러스터된 메시지 구동 Bean(토폴로지에 종속): 이 시나리오에서 메시지 구동 Bean 애플리케이션은 서버의 클러스터에 배치되었습니다. 주어진 메시지 엔드포인트 MBean은 클러스터의 한 서버에서만 MDB의 동작을 제어하므로 한 서버만 메시지 처리를 중지합니다. 메시징 구성과 사용 중인 특정 자원 어댑터에 따라, 일시정지된 메시지 엔드포인트가 이용한 메시지는 클러스터의 활성 메시지 엔드포인트에 이용되거나 일시정지된 메시지 엔드포인트가 재개될 때까지 이용되지 않은 채로 남아 있을 수 있습니다.
  • 클러스터된 메시지 구동 Bean, 클러스터되지 않은 큐: 이 시나리오에서는 동일한 메시지 구동 Bean이 배치된 서버의 클러스터가 있습니다. 이는 메시지 구동 Bean이 논리적으로 동일한 메시지 구동 Bean인 경우를 제외하고는, 메시지 선택 기준이 동일한 여러 다른 메시지 구동 Bean이 있는 상황과 유사합니다. 엔드포인트를 일시정지하면 서버의 한 서버만 메시지 수신을 중지하고 다른 메시지 구동 Bean은 모든 메시지를 수신합니다. 고아가 되는 메시지가 없습니다. 모든 엔드포인트를 중지하려면 클러스터의 각 서버를 로컬 메시지 엔드포인트를 중지하도록 지정해야 합니다.
  • 클러스터된 메시지 구동 Bean, 클러스터된 큐 이 시나리오에서는 각 메시지 구동 Bean이 큐의 다른 파티션에서 메시지를 가져옵니다. WebSphere MQ 및 서비스 통합 버스를 통한 메시징이 유사하지만 기능은 다릅니다. WebSphere MQ를 사용 중인 경우에 한 엔드포인트를 일시정지하면 메시지 구동 Bean의 다른 인스턴스가 메시지를 수신하지 못합니다. 서비스 통합 버스에서는 일시정지된 엔드포인트의 메시지가 다른 메시지 구동 Bean으로 경로 재지정됩니다.

주제 유형을 표시하는 아이콘 태스크 주제



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