小编Pra*_*rma的帖子

spring kafka消费者中的无限重试@retryabletopic

我正在使用 @RetryableTopic 在 kafka 消费者中实现重试逻辑。我给出的配置如下:

@RetryableTopic(
            attempts = "4",
            backoff = @Backoff(delay = 300000, multiplier = 10.0),
            autoCreateTopics = "false",
            topicSuffixingStrategy = SUFFIX_WITH_INDEX_VALUE
    )
Run Code Online (Sandbox Code Playgroud)

然而,它不是重试 4 次,而是无限重试,而且也没有延迟时间。有人可以帮我解决代码吗?我希望该消息重试 4 次,第一次延迟 - 5 分钟后,然后第二次延迟 10 分钟后,第三次延迟 20 分钟后......

代码如下:

int i = 1;

@RetryableTopic(
        attempts = "4",
        backoff = @Backoff(delay = 300000, multiplier = 10.0),
        autoCreateTopics = "false",
        topicSuffixingStrategy = SUFFIX_WITH_INDEX_VALUE
)
@KafkaListener(topics = "topic_string_data", containerFactory = "default")
public void consume(@Payload String message , @Header(KafkaHeaders.RECEIVED_TOPIC) String topic) {
    String prachi = null; …
Run Code Online (Sandbox Code Playgroud)

apache-kafka spring-retry kafka-consumer-api spring-kafka

2
推荐指数
1
解决办法
1万
查看次数