성능 모니터링 통계 문제점 해결
클러스터 환경에서 메시지 구동 Bean을 배치할 때 엔터프라이즈 Bean 카운터 MethodLevelCallCount와 MessageCount에 대한 성능 모니터링 통계 간 불일치를 해결하려면 이 태스크를 사용하십시오.
이 태스크 정보
이 태스크는 클러스터 환경의 메시지 구동 Bean에 대한 성능 모니터링 통계 불일치를 해결합니다. 가끔 추적 메시지 수가 PMI(Performance Monitoring Infrastructure)/TPV(Tivoli Performance Viewer) 출력 통계에 대응하지만 메시지 구동 Bean의 로그 메시지에 대응하지 않습니다. 이는 MethodLevelCallCount 엔터프라이즈 Bean 카운터에 기타 Bean과 다른 의미의 메시지 구동 Bean이 있기 때문에 발생합니다.
일반적으로 PMI 통계 콜렉션 측면에서
EJB(Enterprise JavaBeans) 컨테이너와 관련하여 메시지 전달이
다음 단계로 구성됩니다.
- EJB 컨테이너 사전 호출 처리. 메시지 전달을 위한 실행 환경을 준비합니다.
- 대기열에서 메시지 제거 및 해당 메시지를 처리하는 메시지 구동 Bean 메소드 호출.
- EJB 컨테이너 사후 호출 처리. 실행 환경을 정리(예: 사후 호출 처리 중에 시작된 트랜잭션 커미트 또는 롤백)합니다.
큐에서 메시지를 제거하여 메시지 구동 Bean으로 전달하려고 하는 여러 서버나 스레드가 있는 경우, 다른 서버나 스레드가 이미 메시지를 처리한 이유로 2단계에서 큐가 비어 있고 전달할 내용이 없다는 것을 메시징 서비스가 발견할 수도 있습니다. 이 경우에는, 2단계에서 메시지 구동 Bean 메소드가 호출되지 않으므로 MethodLevelCallCount가 처리를 위해 메시지 구동 Bean에 메시지가 전달된 횟수와 대응하지 않습니다. 대신, MethodLevelCallCount는 메시지 전달이 시도된 횟수를 표시하며, 엔터프라이즈 Bean 카운터 MessageCount가 메시지 구동 Bean에 성공적으로 전달된 수를 표시합니다.
프로시저
- 단일 서버 환경에서는 MethodLevelCallCount와 MessageCount가 같아야 합니다.
- 다중 서버 환경(또는 여러 이용자가 있는 환경)에서는 MethodLevelCallCount 및 MessageCount가 다를 수 있습니다. 차이가 크면 메시징 시스템 재조정을 고려하십시오.