gpt4 book ai didi

java - Apache Pulsar Consumer.acknowledgeAsync() 失败应该如何处理?

转载 作者:行者123 更新时间:2023-11-30 07:43:12 25 4
gpt4 key购买 nike

我正在使用 Consumer.acknowledgeAsync() 来确认我的 Java 服务中的消息,并且想知道如果确认失败会发生什么?我是否应该重试该操作几次并在重试次数耗尽时丢弃我的消费者?

我正在计算正在处理的消息数量以进行流量控制以限制内存使用。

最佳答案

通常,如果消息没有被成功确认,在 ackTimeout 之后,消息将再次从 broker 重新传递给 consumer。所以在这里,大多数情况下,不需要重试。

也许像这样的一些处理就足够了:

consumer.acknowledgeAsync(msgId)
.thenAccept(consumer -> successHandlerMethod())
.exceptionally(exception -> failHandlerMethod());

关于java - Apache Pulsar Consumer.acknowledgeAsync() 失败应该如何处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53704514/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com