31장. Master
소비자만 지원됩니다.
Camel-Master 엔드포인트는 클러스터의 단일 소비자만 지정된 끝점에서 사용할 수 있도록 하는 방법을 제공하며, 해당 JVM이 종료되면 자동 장애 조치(failover)를 수행합니다.
이는 동시 사용을 지원하지 않는 일부 레거시 백엔드에서 사용하거나 상업적 또는 안정성으로 인해 언제든지 단일 연결만 사용할 수 있는 경우 매우 유용할 수 있습니다.
31.1. 마스터 끝점 사용
그냥 모든 camel 끝점 앞에 master:someName: 여기서 someName 은 논리적 이름이며 마스터 잠금을 획득하는 데 사용됩니다. 예를 들면 다음과 같습니다.
from("master:cheese:jms:foo").to("activemq:wine");
이 예제에서는 마스터 구성 요소가 있으면 클러스터에서 경로가 한 번에 하나의 노드에서만 활성화되도록 합니다. 따라서 클러스터에 8개의 노드가 있는 경우 마스터 구성 요소는 하나의 경로를 리더로 선택하고 이 경로만 활성 상태가 됩니다. 따라서 이 경로만 jms:foo
의 메시지만 사용합니다. 이 경로가 중지되거나 예기치 않은 종료된 경우 마스터 구성 요소에서 이를 감지하고 활성 상태가 될 다른 노드를 다시 선택합니다. 그러면 jms:foo
에서 메시지 사용을 시작합니다.
Apache ActiveMQ 5.x에는 Exclusive Consumers 라는 박스에서 이러한 기능이 있습니다.