![](/img/trans.png)
[英]Unable To Receive Kafka Messages at kafka consumer side with akka kafka kerberos configuration
[英]Kafka - patterns for handling consumer unable to process messages
我正在嘗試實現簡單的服務,該服務從kafka提取消息,將消息包裝在一些數據中並發送到外部服務。
處理消息時處理外部服務不可用的常見模式是什么?
到目前為止,我僅在對外部服務的請求成功時才手動提交消息。 我希望kafka在一段時間后重新發送消息(如果未提交),以便處理外部服務故障對使用者是透明的。 不過,我找不到辦法。 但是,我很好奇我是否不做一些反模式設計,並且有更好的解決方案。
首先,您需要考慮,Kafka是基於拉的。 因此,如果您想第二次接收消息,則需要將seek()
移至其offset和poll()
。
此外,如果要停止處理消息,可以pause()
分區,然后再resume()
分區。 請參閱Consumer JavaDoc中的“消費流控制”部分: https : //kafka.apache.org/090/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html
因此,如果您的外部服務已關閉,請暫停並等待直到其恢復。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.