17.6. 다중 사이트 내결함성 메시징 시스템에서 클라이언트 구성
내부 클라이언트 애플리케이션은 브로커 서버와 동일한 데이터 센터에 있는 시스템에서 실행 중인 애플리케이션입니다. 다음 그림은 이 토폴로지를 보여줍니다.
외부 클라이언트 애플리케이션은 브로커 데이터 센터 외부에 있는 시스템에서 실행 중인 것입니다. 다음 그림은 이 토폴로지를 보여줍니다.
다음 하위 섹션에서는 데이터 센터 중단 시 다른 데이터 센터의 백업 브로커에 연결하도록 내부 및 외부 클라이언트 애플리케이션을 구성하는 방법을 보여줍니다.
17.6.1. 내부 클라이언트 구성 링크 복사링크가 클립보드에 복사되었습니다!
데이터 센터 중단이 발생하면 내부 클라이언트 애플리케이션이 브로커와 함께 종료됩니다. 이러한 상황을 완화하려면 별도의 데이터 센터에서 클라이언트 애플리케이션의 다른 인스턴스를 사용할 수 있어야 합니다. 데이터 센터 중단이 발생하는 경우 백업 클라이언트를 수동으로 시작하여 수동으로 시작한 백업 브로커에 연결합니다.
백업 클라이언트가 백업 브로커에 연결할 수 있도록 하려면 기본 데이터 센터의 클라이언트와 유사하게 클라이언트 연결을 구성해야 합니다.
예제
마스터-슬레이브 브로커 그룹에 대한 AMQ Core Protocol JMS 클라이언트에 대한 기본 연결 구성은 다음과 같습니다. 이 예제에서 host1
및 host2
는 마스터 및 슬레이브 브로커의 호스트 서버입니다.
<ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(“(tcp://host1:port,tcp://host2:port)?ha=true&retryInterval=100&retryIntervalMultiplier=1.0&reconnectAttempts=-1”);
<ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(“(tcp://host1:port,tcp://host2:port)?ha=true&retryInterval=100&retryIntervalMultiplier=1.0&reconnectAttempts=-1”);
데이터 센터 중단 시 백업 브로커에 연결하도록 백업 클라이언트를 구성하려면 유사한 연결 구성을 사용하지만 백업 브로커 서버의 호스트 이름만 지정합니다. 이 예에서 백업 브로커 서버는 host3입니다.
<ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(“(tcp://host3:port)?ha=true&retryInterval=100&retryIntervalMultiplier=1.0&reconnectAttempts=-1”);
<ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(“(tcp://host3:port)?ha=true&retryInterval=100&retryIntervalMultiplier=1.0&reconnectAttempts=-1”);
추가 리소스
브로커 및 클라이언트 네트워크 연결 구성에 대한 자세한 내용은 다음을 참조하십시오.