0

我在 Kafka 消费者中使用指数重试。它按预期工作,但我需要为其添加更多配置。假设在最大重试尝试之后,请求仍然不成功,那么我需要在此后的固定时间内重试它。
假设乘数为 2,最大重试次数为 4,初始重试间隔为 1 秒,那么重试序列将是
1 秒、2 秒、4 秒、8 秒。
在第四次尝试之后,我需要以固定的时间间隔(比如每 10 秒之后)重试,直到请求成功。
有什么办法可以做到这一点?

4

1 回答 1

0

假设你使用的是ExponentialBackOffPolicyin RetryTemplate,你可以设置它的maxInterval属性。

如果您使用 aSeekToCurrentErrorHandler代替ExponentialBackOff(现代版本的 spring-kafka 更喜欢使用 - 以避免重新平衡),它也有一个maxInterval属性。

于 2021-05-24T14:34:20.877 回答