當前位置:
首頁 > 最新 > SSM 曲線救國-Kafka消費異常

SSM 曲線救國-Kafka消費異常

前言

最近線上遇到一個問題:在消費 消息的時候如果長時間( )隊列里沒有消息就可能再也消費不了。針對這個問題我們反覆調試多次。線下模擬,調整代碼,但貌似還是沒有找到原因。但是只要重啟消費進程就又可以繼續消費。

解決方案

由於線上業務非常依賴 的消費,但一時半會也沒有找到原因,所以最後只能想一個臨時的替換方案:

基於重啟就可以消費這個特點,我們在每次消費的時候都記下當前的時間點,當這個時間點在十分鐘之內都沒有更新我們就認為當前隊列中沒有消息了,就需要重啟下消費進程。

既然是需要重啟, 所以需要 來配合調度:每隔一分鐘會調用一個 ,該腳本會判斷當前進程是否存在,如果存在則什麼都不作,不存在則啟動消費進程。

具體實現

消費程序:

在線代碼

需要配合以下這個 :

在線代碼

再配合 的調度:

即可。

總結

雖說處理起來很簡單,但依然是治標不治本,依賴的東西比較多( )。所以也問問各位有沒有什麼思路:

消費程序用的:https://github.com/linzhaoming/easyframe-msg

生產配置:

三台 組成的集群。

其中也有其他團隊的消費程序在正常運行,應該和 的配置沒有關係。

項目地址:https://github.com/crossoverJie/SSM.git

個人博客:http://crossoverjie.top。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!

TAG: |