2016-11-08 4 views
0

저는 Masstransit + RabbitMQ를 사용하고 있습니다. 내 소비자 중 하나가 재시도 정책을 구현하고 메시지가 오류 대기열에 있으면 메시지 재시도 기능을 사용할 수 있는지 궁금합니다.MassTransit 메시지 재시도 횟수를 받으십시오.

또한 RabbitMq 서버를 사용하여 메시지의 헤더에서 관련 정보를 찾지 못해서 MT 계산이 다시 시도되는 것을 알고 싶습니다.

감사합니다.

답변

0

소비자는 다음 방법을 사용하여 다시 시도 횟수를 다시 시도 할 수 있습니다.

consumeContext.GetRetryAttempt() 

재 시도 일 경우> 0을 반환해야합니다.

+0

예,이 데이터는 어디에 저장 되나요? 메시지 헤더 또는 미들웨어의 어딘가에 있습니까? – Paulik

+0

메시지 처리 중에 미들웨어 페이로드에서 유지 관리됩니다. 그것은 어디에도 유지되지 않습니다. –

+0

@ChrisPatterson : RabbitMQ로 시도하지는 않았지만 Azure Service Bus 또는 메모리 내 전송으로 반환 값은 항상 0입니다. 버그입니까? 누락 된 기능이 있습니까? 또는 그것은 당신을 위해 일하고 나는 틀린 일을하고 있습니까? –