NServiceBus를 조사 중이며이 시나리오를 처리하는 데 어떻게 사용할 수 있는지 확신 할 수 없습니다.NServiceBus 배포자가 작업자에게 진행 상태를보고 할 수 있습니까?
배포자가 작업자에게 배포하는 작업 요청을 보내는 클라이언트가 여러 개 있습니다. 작업이 완료되는 데 오랜 시간이 걸릴 것이며 원 작업자가 원래 요청을 보낸 클라이언트에게 진행 상태를보고하길 원합니다.
전이중 샘플을 살펴본 결과 how to add the distributor to that sample입니다. 나는 이것들을 작동시키지 만, 일련의 진행 메시지들 (메시지들 사이에, 아래 표시된 코드에 따라 지연 됨)로 응답하도록 수정하면, 클라이언트는 동시에 모든 진행 메시지를 수신한다.
public class RequestDataMessageHandler : IHandleMessages<RequestDataMessage>
{
public IBus Bus { get; set; }
public void Handle(RequestDataMessage message)
{
for (var i = 0; i < 10; i++)
{
var count = i;
var response = this.Bus.CreateInstance<DataResponseMessage>(m =>
{
m.DataId = message.DataId;
m.Progress = count * 10;
});
this.Bus.Reply(response);
Thread.Sleep(1000);
}
}
}
나는 NServiceBus가 어떻게 작동하는지에 대해 기본적인 것을 이해하지 못했다고 생각합니다. 누군가 내가 잘못한 곳을 설명하거나, 몇 가지 예 및/또는 문서를 가르쳐 줄 수 있습니까?
코드를 표시 할 수 있습니까? – Paco