go go-stomp在activeMQ的初步應用

activeMQ部署不在這裡介紹,隨便一搜一大把。

最近在做一個系統,其中需要用到消息隊列。選來選去就選擇了activeMQ,最開始在網上搜了一下go在activeMQ的用法,根據網上的代碼實現之後。發現了幾個問題:

1:當沒有消息入隊或者出隊的時候,5分鐘之後,生產者和消費者都會斷開連接,5分鐘之後,再發送消息到消息隊列,會出現連接超時(connect timeout),讀取消息也會出現讀取超時(read timeout)。

2:消費者讀取消息處理完之後,隊列中的消息條數並沒有減少。

為了解決這個兩個問題,看了下官方文檔 :github.com/go-stomp/stomp。

1:解決超時問題,在鏈接activeMQ的時候,需要設置讀寫鏈接超時限制;如果沒有這個設置這兩項,默認超時時間是5分鐘。

2:當消費者獲取到消息之後,需要發送一個應答給消息隊列;不然消息還是會存在消息隊列中。

針對上面的情況,我將代碼貼出來,不說多了廢話。

go go-stomp在activeMQ的初步應用
go go-stomp在activeMQ的初步應用


分享到:


相關文章: