현재 메시지 대기열 시스템을 평가 중이며 RabbitMq는 좋은 후보로 보입니다. 그래서 조금 더 자세히 살펴 보겠습니다.RabbitMq가 대기열에 대한 교환기에서 라운드 로빈을 수행합니까?
약간의 컨텍스트를 제공하기 위해 하나의 Exchange로드가 여러 큐에 게시되는 메시지의 균형을 조정하려고합니다. 메시지를 복제하고 싶지 않으므로 팬 아웃 교환은 옵션이 아닙니다.
또한 다중 대기열 대 하나의 대기열과 소비자가 처리하는 하나의 대기열을 생각하는 이유는 단일 실패 지점이 대기열 수준에 있지 않기를 바라는 것입니다.
게시자 측에서 로직을 추가하여 라우팅 키를 편집하고 해당 바인딩을 제자리에 두어 동작을 시뮬레이트하는 것처럼 들릴 수 있습니다. 그러나 이는 각 대기열의 메시지 소비 속도를 고려하지 않는 수동적 접근 방식으로, 해당 대기열의 소비자 응용 프로그램이 죽은 경우 하나의 대기열을 채울 수 있습니다.
저는 Exchange 엔터티 측면에서보다 능동적 인 방법을 찾고 있었는데, 각 큐 크기 나 그 특성에 기반하여 다음 메시지를 보낼 위치를 결정할 것입니다.
나는 Alice와 사용 가능한 RESTful API에 대해 읽었지 만, 빠른 라우팅 결정을 구현하는 데 큰 도움이된다.
누구든지 RabbitMQ를 사용하여 대기열을 교환하는 사이에 라운드 로빈이 가능한지 알고 있습니다. 감사.
생산 과정에서 하나의 대기열을 테스트하자마자 규모 문제가 발생했습니다.단일 큐는 단일 스레드입니다. 우리의 짐을 따라갈 수 없습니다. 우리는 라운드 로빈 배포판에서 작업 할 수있는 모범 사례를 찾고 있습니다. –