MassTransit中的多个重试策略

时间:2017-08-13 10:30:57

标签: c# masstransit retrypolicy

我在我的应用程序中使用MassTransit,并希望配置多个重试策略。 documentation没有提及他们将如何互动,所以我希望有人可以澄清。

我想要做的是为等待可用资源的一些消费者实施二次重试。如果资源不可用,我想抛出一个特定的异常并稍后重试。

为此,我有类似的东西。

ep.UseRetry(retryConfig => 
{
    retryConfig.Handle<RetryLaterException>();
    retryConfig.Interval(5, TimeSpan.FromMinutes(1));
});

我还想要一个通用的重试策略来处理所有失败,除非我需要重试。

ep.UseRetry(retryConfig => 
{
    retryConfig.Ignore<RetryLaterException>();
    retryConfig.Interval(5, TimeSpan.FromSeconds(1));
});

MassTransit可以处理吗?我应该在哪个级别放置这些重试策略以获得最佳结果(总线,端点或消费者)?

谢谢

0 个答案:

没有答案