15.6. 다중 사이트 내결함성 메시징 시스템에서 클라이언트 구성
내부 클라이언트 애플리케이션은 브로커 서버와 동일한 데이터 센터에 있는 시스템에서 실행 중인 애플리케이션입니다. 다음 그림은 이 토폴로지를 보여줍니다.
외부 클라이언트 애플리케이션은 브로커 데이터 센터 외부에 있는 시스템에서 실행 중인 애플리케이션입니다. 다음 그림은 이 토폴로지를 보여줍니다.
다음 하위 섹션에서는 데이터 센터 중단 시 다른 데이터 센터의 백업 브로커에 연결하도록 내부 및 외부 클라이언트 애플리케이션을 구성하는 예를 보여줍니다.
15.6.1. 내부 클라이언트 구성
데이터 센터 중단이 발생하면 브로커와 함께 내부 클라이언트 애플리케이션이 종료됩니다. 이러한 상황을 완화하려면 별도의 데이터 센터에서 다른 클라이언트 애플리케이션 인스턴스를 사용할 수 있어야 합니다. 데이터 센터 중단이 발생하면 수동으로 시작한 백업 브로커에 연결하기 위해 백업 클라이언트를 수동으로 시작합니다.
백업 클라이언트가 백업 브로커에 연결할 수 있도록 하려면 기본 데이터 센터의 클라이언트와 유사하게 클라이언트 연결을 구성해야 합니다.
예제
아래에는 AMQ Core Protocol JMS 클라이언트에 대한 master-slave 브로커 그룹에 대한 기본 연결 구성이 표시되어 있습니다. 이 예제에서 host1
및 host2
는 마스터 및 슬레이브 브로커의 호스트 서버입니다.
<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”);
추가 리소스
- 브로커 네트워크 연결 구성에 대한 자세한 내용은 2장. 네트워크 연결에서 어셉터 및 커넥터 구성 을 참조하십시오.
15.6.2. 외부 클라이언트 구성
외부 브로커 클라이언트가 데이터 센터 중단 시 메시징 데이터를 계속 생성하거나 소비할 수 있도록 하려면 다른 데이터 센터의 브로커에 장애 조치하도록 클라이언트를 구성해야 합니다. 다중 사이트 내결함성 시스템의 경우 중단 시 수동으로 시작하는 백업 브로커에 장애 조치하도록 클라이언트를 구성합니다.
예
다음은 기본 master-slave 그룹을 사용할 수 없는 경우 백업 브로커에 장애 조치하도록 AMQ Core Protocol JMS 및 AMQ JMS 클라이언트를 구성하는 예입니다. 이 예에서 host1
및 host2
는 기본 마스터 및 슬레이브 브로커의 호스트 서버이며, host3
은 데이터 센터 중단 시 수동으로 시작하는 백업 브로커의 호스트 서버입니다.
AMQ Core Protocol JMS 클라이언트를 구성하려면 클라이언트가 연결하려는 정렬된 브로커 목록에 백업 브로커를 포함합니다.
<ConnectionFactory connectionFactory = new ActiveMQConnectionFactory(“(tcp://host1:port,tcp://host2:port,tcp://host3:port)?ha=true&retryInterval=100&retryIntervalMultiplier=1.0&reconnectAttempts=-1”);
AMQ JMS 클라이언트를 구성하려면 클라이언트에서 구성하는 장애 조치 URI에 백업 브로커를 포함합니다.
failover:(amqp://host1:port,amqp://host2:port,amqp://host3:port)?jms.clientID=foo&failover.maxReconnectAttempts=20
추가 리소스
장애 조치 구성에 대한 자세한 내용은 다음을 참조하십시오.
- AMQ Core Protocol JMS 클라이언트는 다시 연결 및 장애 조치(failover) 를 참조하십시오.
- AMQ JMS 클라이언트는 failover 옵션을 참조하십시오.
- 기타 지원되는 클라이언트는 링크의 AMQ Clients 섹션: Red Hat AMQ Clients 2.11 제품 설명서에서 클라이언트별 설명서를 참조하십시오.