2012-05-24 4 views
4

우리는 테스트 환경에서 RabbitMQ의 액티브/액티브 클러스터를 구성했습니다.MassTransit with RabbitMQ - RecieveFrom의 주소

ReceiveFrom ("rabbitmq : // cluster_machine_a/some_queue? ha = true")을 지정하여 MassTransit을 사용하여 연결합니다.

분명히 이것은 특정 클러스터 노드를 사용하므로 장애 조치를 제공하지 않습니다.

페일 오버가 발생하도록 클러스터 노드에 대해 MassTransit에 알리는 올바른 방법은 무엇입니까?

RabbitMQ 문서는 클라이언트가 트래픽을 관리하기 위해 기존로드 균형 조정기를 사용해야한다는 것을 나타내지 만 RabbitMQ와 함께 사용할 수 있습니까? (마지막 절 - http://www.rabbitmq.com/clustering.html)

답변

2

내 자신의 질문에 답하기 위해 MassTransit의 장애 조치 파트너와 장애 조치 (failover) SQL Server 연결 문자열 개념이 없습니다.

대신에 RMQ의 infront로드 밸런서를 도입하고 복구를 코딩하는 노드가 다운되었을 때 오류를 수신한다는 것을 받아들입니다. 물론 RMQ 노드를 함께 연결해야합니다.이 클러스터는 inbuilt 클러스터링으로 구현할 수 있습니다.

마지막으로로드 밸런서가 도입 한 가상 IP에서 수신하고 실패한 RMQ 노드를 감지하도록합니다.