원격 메시지 지점을 통해 등록이 공개/등록 메시지를 수신하지 않는 이유 조사

메시지가 원격 메시지 지점을 통하여 라우팅될 때, 공개/등록 메시지가 서비스 통합 버스의 등록에 의해 수신되지 않는 이유를 조사하기 위해 수행할 수 있는 일련의 확인 사항들이 있습니다.

시작하기 전에

이 태스크를 진행하기 전에, 수행해야 할 예비 확인 사항과 조사 태스크를 포함하는 공개/등록 메시지가 등록에 도달하지 않는 이유 조사의 단계를 따르십시오.

이 태스크 정보

공개/등록 메시지가 등록에 도달하지 않는 이유 조사의 일부로 이 태스크를 완료하십시오. 이 태스크는 메시지가 원격 메시지 지점을 통하여 내구력이 없는 등록으로 라우팅되는 공개/등록 메시징 시나리오에서의 메시지 흐름을 조사하는 방법을 설명합니다. 다음 다이어그램은 두 가지 가능한 상황을 보여줍니다. 다이어그램의 점선은 발행 지점간 관계를 나타내며 실선은 메시지의 흐름을 나타냅니다. 그림 1에서는 버스에 세 개 메시징 엔진(ME1, ME2, ME3)이 포함됩니다. 발행 애플리케이션은 ME1에 연결되어 있으며 등록 애플리케이션은 ME2와 ME3에 연결되어 있습니다. ME1은 ME2와 ME3에 의해 호스팅되는 발행 지점을 나타내는 원격 발행 지점을 호스팅합니다. 그림 2에서는 버스에 세 개 메시징 엔진(ME1, ME2, ME3)이 포함됩니다. 발행 애플리케이션은 ME1에 연결되어 있으며 등록 애플리케이션은 ME2와 ME3에 연결되어 있습니다. ME1은 ME2와 ME3에 의해 호스팅되는 발행 지점을 나타내는 원격 발행 지점을 호스팅합니다. 등록 애플리케이션 B는 ME3에 연결되어 ME2의 원격 등록을 통해 ME1로부터 발행을 수신합니다. 이 메시징 엔진은 다음 단계에서 참조됩니다.
그림 1. 원격 메시지 지점을 사용하여 지점간 메시지 생성 이 그림은 원격
메시지 지점을 사용하여 지점간 메시지 생성을 설명합니다.
그림 2. 원격 메시지 지점을 사용하여 메시지 공개/등록이 그림은 원격 메시지 지점을 사용하여 공개/등록 메시징을 설명합니다.
다음 단계는 시나리오 둘 모두에 적용됩니다.

프로시저

  1. 서비스 통합 -> 버스 -> bus_name -> [토폴로지] 메시징 엔진 -> engine_name를 클릭하여 ME1에 대한 특성을 표시하십시오.
  2. ME1의 런타임 탭에서 [원격 메시지 위치] 원격 발행 위치를 클릭한 다음 ME2의 발행 위치를 나타내는 원격 발행 위치를 클릭하십시오. 주제를 클릭하고 이용자 주제가 나열되었는지 확인하십시오. 주제가 나열되지 않은 경우에는 다음 확인 작업을 완료하십시오.
  3. 메시지가 발행된 이후 등록의 등록이 가능합니다. 메시지를 다시 발행한 후 수신되었는지 다시 확인하십시오.
  4. ME1에서, ME2의 발행 지점을 나타내는 원격 발생 지점을 다시 표시하십시오. 현재 아웃바운드 메시지 필드의 값을 검토하십시오.
  5. 현재 아웃바운드 메시지 수가 0보다 큰 경우 메시지가 생성되었지만 ME2가 수신하지 않았을 수 있습니다.
    1. 두 메시징 엔진이 서로 통신할 수 있는지 확인하십시오. 서비스 통합 문제점 해결: 버스의 두 메시징 엔진 간 통신 확인의 내용을 참조하십시오.
    2. 주제 공간에서 이전 메시지를 찾으십시오. 이전 메시지가 있으면서 그들 중 일부 또는 모두가 ME2에 대한 것인 경우, 잠시 기다린 후 보기를 새로 고치십시오.
      • 메시지의 일부가 주제 공간에서 사라진 경우 시스템은 메시지를 전달하지만 백로그됩니다. 백로그가 지워질 때까지 기다린 다음, ME2의 발행 지점을 조사하여 테스트 메시지가 도달했는지 확인하십시오.
      • 메시지가 주제 공간에서 하나도 사라지지 않은 경우, 메시지의 전송은 Committing 상태로 트랩된 메시지에 의해 차단될 수 있습니다. 나중 메시지는 이 메시지가 전달될 때까지 기다려야 하며, 그렇지 않으면 메시지의 순서가 손상됩니다.

        메시지가 Committing 상태로 트랩되면, 그 메시지는 미해결 트랜잭션에 포함됩니다. 데이터베이스와 같은 자원 관리자는 정지되어 있을 수 있습니다. 자원 관리자 관련 문제를 해결하십시오. 이것이 실패하면 메시지의 트랜잭션 ID를 주목하고 서버 -> 서버 유형 -> WebSphere 애플리케이션 서버 -> server_name -> 런타임 > [추가 특성] 트랜잭션 서비스를 클릭하여 트랜잭션 서비스에 대한 일반 특성을 표시하십시오. 검토 링크를 사용하여 글로벌 ID가 메시지의 트랜잭션 ID와 일치하는 트랜잭션을 해결하십시오.

    3. 테스트 메시지의 상태를 확신하십시오.
      • 테스트 메시지의 상태가 "전송 보류 중"인 경우 메시지는 전송 대기 중입니다. ME2는 메시지를 수락하지 않을 수 있습니다. 다음 확인 사항을 완료하십시오.
        • 두 메시징 엔진이 서로 통신할 수 있는지 확인하십시오. 서비스 통합 문제점 해결: 버스의 두 메시징 엔진 간 통신 확인의 내용을 참조하십시오.
        • ME2의 발행 지점이 가득 차지 않았는지 확인하십시오. 발행 지점에 대한 런타임 특성을 표시하고 현재 메시지 깊이높은 메시지 임계값을 비교하십시오. 현재 메시지 깊이가 높은 메시지 임계값과 같은 경우, 큐 메시지가 이용되어야 메시지 엔진은 새 메시지를 승인할 수 있습니다. 이용자를 다시 시작하고 백로그가 지워질 때까지 대기하거나 메시지를 삭제하십시오.
        • 구성 변경사항에 전파되었는지 확인하십시오. 최신 구성 설정을 ME2 애플리케이션 서버에 배치하여 ME2가 공개 위치 존재를 알고 있는지 확인하십시오.
      • 테스트 메시지 상태가 "수신확인 보류"인 경우에는 메시지가 전송되었지만 ME2가 메시지를 수신하지 않았거나 메시지를 처리하지 않은 것입니다. 전송 큐에서 테스트 메시지 앞에 Committing 상태의 메시지가 없는지 확인하고 잠시 기다린 후 발행 지점을 다시 검사하여 테스트 메시지가 도달했는지를 확인하십시오. Committing 상태에 트랩된 메시지가 있는 경우에는 다음 사항을 참조하여 이 문제점을 해결하십시오.
      • 테스트 메시지(또는 다른 메시지)가 Committing 상태인 경우 메시지는 미해결 트랜잭션에 포함됩니다. 데이터베이스와 같은 자원 관리자는 정지되어 있을 수 있습니다. 자원 관리자 관련 문제를 해결하십시오. 이것이 실패하면 메시지의 트랜잭션 ID를 주목하고 서버 -> 서버 유형 -> WebSphere 애플리케이션 서버 -> server_name -> 런타임 > [추가 특성] 트랜잭션 서비스를 클릭하여 트랜잭션 서비스에 대한 일반 특성을 표시하십시오. 검토 링크를 사용하여 글로벌 ID가 메시지의 트랜잭션 ID와 일치하는 트랜잭션을 해결하십시오.
  6. 완료된 아웃바운드 메시지의 수가 0보다 크면 메시지는 생성되고 ME2에 의해 처리되었지만 테스트 메시지는 표시되지 않았습니다. 생성 애플리케이션을 재실행하고 ME1의 완료된 아웃바운드 메시지의 수가 증가했는지 확인하십시오. (완료 아웃바운드 메시지 수가 증가하기 전에 활성 아웃바운드 메시지 수가 증가하는 것을 볼 수 있습니다.)
    • 수가 증가하지 않으면 메시지는 ME1에서 생성되지 않았습니다. 생성 애플리케이션이 이 메시징 엔진에 연결되었는지 확인하십시오(애플리케이션이 연결된 메시징 엔진 판별 참조).
    • 수가 증가하면 메시지는 ME2에 도달했지만 이용되었거나 예외 대상으로 전송되었거나 만료되었습니다. 이용자의 존재에 대해 확인하고 예비 확인 사항을 다시 완료하십시오.
  7. 현재 및 완료 메시지의 수가 모두 0인 경우, 생성 애플리케이션이 관련 예비 확인 사항을 다시 수행하여 이 대상으로 메시지를 생성하는지 확인하십시오.
  8. 이제 ME1과 ME2 사이의 메시지의 흐름을 확인했습니다. 그림 1의 등록 애플리케이션 A 또는 B의 위치에 있는 애플리케이션이 있는 경우, 상황을 완전히 조사했습니다. 여전히 문제가 있다면 IBM 고객 서비스 담당자에게 문의하십시오. 그림 2의 등록 애플리케이션 B의 위치에 있는 애플리케이션이 있는 경우(즉, 원격 등록을 갖는 애플리케이션), 다음 단계를 사용하여 ME2와 ME3 사이의 메시지 흐름을 조사해야 할 수도 있습니다. 애플리케이션이 원격 등록을 사용하는지 여부를 판별하려면 관련 주제 공간에 대한 공개 위치를 표시하고 등록을 찾아 공개 지점 이름을 검사하십시오. 이름 양식은 topic_space_name@messaging_engine_name입니다. 이것은 등록을 호스팅하는 메시징 엔진을 사용자에게 알려줍니다. 이 메시징 엔진이 생성 애플리케이션이 연결된 메시징 엔진, 그리고 이용 애플리케이션이 연결된 메시징 엔진과 다른 경우, 원격 등록이 사용되고 있습니다.
  9. ME에 발행 지점에 대한 등록을 표시한 후, 목록에서 사용자의 등록을 찾으십시오. 등록이 나열되지 않은 경우에는 다음 확인 작업을 완료하십시오.
  10. 등록을 클릭한 다음 알려진 원격 등록 지점을 클릭하십시오. 결과 목록에서, 다이어그램에서 ME3으로 표시되는 메시징 엔진의 이름을 클릭하십시오. 메시지 요청을 클릭하십시오. ME3의 원격 등록에서 ME2의 등록으로 수신된 요청이 표시됩니다.
  11. 가능하면 이용 애플리케이션을 시작하고 메시지를 이용하려고 시도 중인지 확인한 후(애플리케이션은 "대기 수신" 상태 또는 "비동기적 이용자 등록" 상태에 있어야 함), 애플리케이션 실행 중 메시지가 원격 메시지 위치 또는 등록 위치를 통해 이용되지 않는 이유 검사의 지시를 따르십시오. 애플리케이션이 중요한 시간(문제점을 조사하기 충분한 시간) 동안 활성 이용 상태로 남아 있을 수 없는 경우, 애플리케이션이 중지된 동안 원격 메시지 지점 또는 등록 지점을 통해 메시지가 소비되지 않는 이유 조사

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



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