모니터 서버 컴포넌트는 WebSphere® Business Monitor에서 세 가지 유형의 예외를 생성합니다.
무한 시나리오에서는 롤백된 이벤트가 반복적으로 처리되고 롤백되므로, 이로 인해 모니터 서버가 블로킹될 수 있습니다. 이러한 동작이 발생하는 이유는 예외(잘못된 순서의 이벤트 처리)를 발생시킨 이벤트 다음에 발생하는 이벤트를 처리하지 못하게 하기 위해서입니다. 이러한 이벤트가 처리되면 이벤트 처리 시퀀스에서 손실이 발생할 수 있습니다.
또는 모니터 서버가 사용하는 대상 대기열인 Monitor_Bus_Queue_Destination에 대한 예외 대상을 없음이 아니라 시스템으로 변경하여 모니터 서버가 런타임 예외에 의해 블로킹되지 않도록 할 수 있습니다. 이런 식으로 런타임 예외를 발생시킨 이벤트를 무시할 수 있습니다. 이 경우 런타임 예외가 발생했을 때 블로킹할 것인지, 데이터 일관성 및 이벤트 시퀀스를 유지할 것인지, 또는 오류를 발생시킨 이벤트를 무시하여 서버의 블로킹을 방지하되 데이터 불일치 및 잘못된 순서의 이벤트는 허용할 것인지를 결정하여 WebSphere Business Monitor를 구성하는 것은 관리자의 책임입니다. 대상 대기열의 예외 대상을 변경하는 상세한 단계에 대해서는 대상 대기열의 예외 대상 변경을 참조하십시오.
이러한 동작의 특별한 사례는 정각 상황 처리에 의해 발생한 하드 예외에 대해 구현됩니다. 이러한 상황이 모니터 서버에 의해 생성 및 소유되며 런타임 엔진 이벤트와는 독립적인 한, 모니터 서버가 이벤트 처리를 재시도하고 시스템을 블로킹하도록 함으로써 이러한 예외를 같은 방식으로 처리할 필요가 없습니다. 이 경우 정각 상황 이벤트 처리에 의해 발생한 예외는 다음과 같이 다른 방식으로 핸들됩니다. 정각 상황 이벤에 대한 처리는 일괄처리 이벤트 처리 주기 트랜잭션 경계 내에서 핸들됩니다. 따라서 정각 상황 이벤트 처리에서 예외가 발생한 경우 처리된 이벤트의 일괄처리가 롤백됩니다. 그러면 모니터 서버는 최종 시작 시간 값을 다음 정각 이벤트가 작성된 시간으로 재설정하며, 다시 최종 시작 시간을 현재 모니터 시간으로 초기화합니다. 이렇게 하면 정각 상황 이벤트가 다음 정각 상황 이벤트 간격으로 지연되면서 그 사이에 처리될 이벤트가 오류의 원인을 제거하기를 기대하게 됩니다.