消費失敗
更新時間 2023-05-13 17:26:43
最近更新時間: 2023-05-13 17:26:43
分享文章
Kafka 是按分區一條一條消息順序向前推進消費的,如果消費端拿到某條消息后執行消費邏輯失敗,比如應用服務器出現了臟數據,導致某條消息處理失敗,等待人工干預,那么有以下兩種處理方式:
- 失敗后一直嘗試再次執行消費邏輯。這種方式有可能造成消費線程阻塞在當前消息,無法向前推進,造成消息堆積。
- 由于 Kafka 自身沒有處理失敗消息的設計,實踐中通常會打印失敗的消息、或者存儲到某個服務(比如創建一個 Topic 專門用來放失敗的消息),然后定時 check 失敗消息的情況,分析失敗原因,根據情況處理。