0
MassTransit을 사용하고 Azure Service Bus를 전송으로 사용하여 소비자를 작성했습니다.소비자 종료시 어떻게됩니까? (MassTransit)
public async Task Consume(ConsumeContext<ISimpleRequest> context)
{
try
{
_log.InfoFormat("Strated working on {0}", context.Message.CustomerId);
Thread.Sleep(500);
_log.InfoFormat("Returning name for {0}", context.Message.CustomerId);
}
catch(Exception ex)
{
await context.Redeliver(TimeSpan.FromSeconds(1));
}
}
예외가 발생하면 다른 사용자에게 메시지를 다시 전송합니다.
그러나 버스가 메시지를 보내면 소비자가 작업을 시작하고 프로세스가 종료됩니다. 어떻게 메시지를 잃을 수 있습니까? google group에서
http://docs.masstransit-project.com/en/latest/usage/exceptions.html – stuartd
오류는 무엇을 의미합니까? –
실패한 메시지가 오류 대기열에 저장 됨 - _ "기본 버스 구성에서 예외가 잡히고 ... 메시지가 _error 대기열 (수신 엔드 포인트 대기열 이름 앞에 있음)로 이동합니다. 예외 세부 사항은 다음과 같은 헤더로 저장됩니다. 분석 및 예외 문제 해결을 돕기위한 메시지 "_. 또한 오류 대기열을 검사하지 않고 오류 메시지를 사용하여 오류에 대한 알림을 얻을 수도 있습니다. – stuartd