클러스터의 구성이 변경될 때마다 변경에 대한 정보가 클러스터의 모든 브로커로 자동 전파됩니다. 다음과 같은 경우에 클러스터 구성이 변경됩니다.
클러스터 브로커 중 하나에서 대상이 작성되거나 삭제된 경우
대상의 등록 정보가 변경된 경우
메시지 소비자가 해당 홈 브로커에 등록된 경우
메시지 소비자와 홈 브로커 사이의 연결이(명시적으로 또는 클라이언트, 브로커 또는 네트워크 오류로 인해) 끊기는 경우
메시지 소비자가 특정 주제에 대한 영구 가입을 설정하는 경우
이러한 구성 변경 정보는 변경 시 온라인 상태인 클러스터의 모든 브로커로 즉시 전파됩니다. 하지만 오프라인 상태의 브로커(예: 충돌한 브로커)는 변경이 발생할 때 변경에 대한 알림을 수신하지 않습니다. 오프라인 상태인 브로커를 수용하기 위해 Message Queue는 작성되거나 삭제된 모든 지속성 항목(대상 및 영구 가입)을 기록하여 클러스터에 대한 구성 변경 기록을 유지 관리합니다. 오프라인 상태인 브로커가 다시 온라인 상태로 되면(또는 새 브로커가 클러스터에 추가되는 경우) 해당 브로커는 대상 및 영구 가입자에 대한 정보를 이 기록에서 참조한 다음 다른 브로커와 현재 활성 메시지 소비자에 대한 정보를 교환합니다.
클러스터에서 마스터 브로커로 지정된 한 브로커가 구성 변경 기록의 유지 관리를 담당합니다. 다른 브로커는 마스터 브로커 없이는 초기화를 완료할 수 없으므로 클러스터 내에서 마스터 브로커가 항상 먼저 시작되어야 합니다. 마스터 브로커가 오프라인 상태로 되면 다른 브로커가 구성 변경 기록에 액세스할 수 없으므로 구성 정보를 클러스터 전체에 전파할 수 없습니다. 이 상태에서 대상이나 영구 가입을 작성, 재구성, 삭제하려는 경우 또는 영구 가입 재활성화와 같은 관련 작업을 시도할 경우 예외가 발생합니다. 하지만 비관리 메시지 전달은 계속해서 정상적으로 작동합니다. 마스터 브로커 및 구성 변경 기록의 사용은 선택 사항입니다. 마스터 브로커 및 구성 변경 기록은 클러스터 구성 변경 또는 브로커 오류 발생 후 클러스터 동기화를 고려하는 경우에만 필요합니다.