2016-11-19 3 views
0

나는 MassTransit에 대한 전송으로 푸른 서비스 버스를 사용하고 있는데 나는 메시지를 보내려고 해요 :MassTransit을 사용하여 여러 소비자가 하나의 대기열을 어떻게 구독 할 수 있습니까? 큐 (명령)

var _busControl = Bus.Factory.CreateUsingAzureServiceBus(cfg => 
      { 
       var host = cfg.Host("...", h => 
       { 
        h.OperationTimeout = TimeSpan.FromMinutes(1); 
       }); 
       cfg.ReceiveEndpoint(host, "queueName", 
        e => { e.Consumer<RequestConsumer>(); }); 
       cfg.UseServiceBusMessageScheduler(); 
      }); 
:

var sendEndpoint = await busControl.GetSendEndpoint(sericeUri); 
sendEndpoint.Send<ISimpleRequest>(new SimpleRequest(customerId)); 

이 또한 내가 두 소비자가이 큐에 연결을 시도

두 번째 소비자와 동일한 코드 이름입니다. 메시지를 보낸 후에 한 명의 소비자 만 응답을받습니다. 그렇다면 두 명 이상의 소비자와 함께 작동하도록이 설정을 어떻게 구성 할 수 있습니까?

+1

주제 및 구독을 사용하는 것이 더 좋습니다. 하나의 메시지를 하나의 주제에 게시하면 여러 구독자가 메시지를 구독 할 수 있습니다. – Aravind

답변

2

각 소비자에 대해 하나씩 두 개의 메시지 사본을 얻으려면 두 개의 개별 대기열과 Publish 메시지를 사용해야합니다. 이 경우 MassTransit이 항목을 주제로 보내고 각 대기열은 주제에서 전달 된 사본을 받게됩니다.

관련 문제