우리 시스템에서 실행중인 다른 프로세스에 메시지를 게시하기 위해 NServiceBus를 이미 사용하는 프로세스가 있습니다. 이 프로세스에 다른 프로세스에 메시지를 게시하는 데 필요한 추가 기능을 추가하고 싶지만 새로운 유형의 메시지로 다른 큐에 쓸 수 있어야합니다. 우선 순위가 다른 대기열에서 메시지를 함께 사용하지 않는 것이 좋습니다. 내가 본 모든 것은 NServiceBus가 프로세스 당 하나의 큐만 지원한다는 것을 나타냅니다. 이 올바른지?NServiceBus : 둘 이상의 큐에 게시 할 프로세스에 대한 요구 사항
그렇다면 누구나 좋은 해결책을 제안 할 수 있습니까? 내가 생각할 수있는 유일한 방법은 별도의 "NServiceBus Hub"프로세스에 새 큐를 저장 한 다음 WCF 통합 기능을 사용하여 새 프로세스 프로세스 간을 새 프로세스 큐에서 허브로 삽입하여 새 큐에 삽입하는 것입니다.
감사합니다.
휴, 응답 해 주셔서 감사합니다. 네가 제안하는 것을 이해하려고 노력하고있어. 어쨌든 이들은 분리 된 서비스이기 때문에 저를위한 문제점은 수신기 (구내 구독자)가 아니다. 문제는 보낸 사람 (게시자) 응용 프로그램이며 높은 우선 순위 메시지와 낮은 우선 순위 메시지를 모두 생성합니다 (구분할 수 없음). 게시자 대기열을 별도의 서비스에 넣을 수는 있지만 응용 프로그램과 게시자 서비스간에 어떻게 통신합니까? WCF? – jacko
그래서 문제는 대기열에 머물러 있지 않으므로 우선 순위가 높은 메시지와 낮은 우선 순위의 메시지를 동일한 서비스에 연결한다는 것입니다. 게시자가 우선 순위가 낮은 항목을 게시하는 CPU주기를 모두 사용한다는 점만 제외하고 구독자가 두 가지 메시지 유형을 모두 구독하지 않는다면 문제가 발생합니다. 게시는 구독을 평가하고 MSMQ를 통해 전송하는 것입니다. MSMQ는 각 구독자마다 메시지를 전송할 별도의 로컬 큐가 만들어 지도록 보장합니다. 따라서 메시지의 우선 순위를 지정하려면 게시자를 여러 서비스로 분리해야합니다. –