簡體   English   中英

Apache Pulsar Consumer.acknowledgeAsync()故障應如何處理?

[英]How should Apache Pulsar Consumer.acknowledgeAsync() failure be handled?

我正在使用Consumer.acknowledgeAsync()來確認Java服務中的消息,並且想知道如果確認失敗了怎么辦? 重試用盡后,我應該重試該操作幾次並丟棄我的消費者嗎?

我正在計算要進行流控制以限制內存使用的消息數。

通常,如果未成功確認消息,則在ackTimeout之后,該消息將再次從代理重新分發給使用者。 因此,在大多數情況下,這里無需重試。

也許這樣的處理就足夠了:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM