8.8. 다른 인스턴스의 원격 클라이언트

이 섹션에서는 JBoss EAP 인스턴스에 배포된 클라이언트 애플리케이션이 다른 JBoss EAP 인스턴스에 배포된 클러스터형 상태 저장 빈을 호출하는 방법에 대해 설명합니다.

다음 예에서는 3개의 서버가 관련되어 있습니다. 서버 X와 Y는 모두 클러스터에 속하며 클러스터형 Jakarta Enterprise Beans를 배포합니다. 클러스터링 기능이 없을 수도 있고 클러스터링 기능이 없을 수도 있는 다른 서버 인스턴스 서버 서버 C가 있습니다. 서버 C는 서버 X 및 Y에 배포된 클러스터형 빈을 호출하고 페일오버를 수행하려는 배포가 있는 클라이언트 역할을 합니다.

구성은 jboss-ejb-client.xml 파일에서 수행되며, 다른 서버에 대한 원격 아웃바운드 연결을 가리킵니다. jboss-ejb-client.xml 파일의 구성은 서버 C가 클라이언트이기 때문에 서버 C의 배포에 있습니다. 클라이언트 구성은 모든 클러스터된 노드를 가리켜야 하는 것이 아니라 그 중 하나를 가리켜야 합니다. 이는 통신의 시작점으로 사용될 것입니다.

이 경우 원격 아웃바운드 연결이 서버 C에서 서버 X로 생성되고 서버 X가 통신의 시작점으로 사용됩니다. 원격 독립 실행형 클라이언트의 경우와 유사하게 서버 C에서 상태 저장 빈을 찾을 때 세션 생성 요청이 세션 ID와 클러스터 선호도를 반환하는 서버 X로 전송됩니다. 또한 서버 X는 비동기 메시지를 클러스터 토폴로지를 포함하는 서버 C로 보냅니다. 서버 Y는 서버 X와 함께 클러스터에 속해 있기 때문에 이 토폴로지 정보에는 서버 Y의 노드 정보가 포함됩니다. 프록시에서 후속 호출은 클러스터의 노드로 적절하게 라우팅됩니다. 앞에서 설명한 대로 서버 X가 종료되면 클러스터와 다른 노드가 선택되고 호출이 해당 노드로 전달됩니다.

다른 JBoss EAP 인스턴스의 원격 클라이언트 및 원격 클라이언트 모두 장애 조치(failover) 측면에서 유사하게 작동합니다.