2012-04-04 123 views
7

我有一個使用SSL傳輸的activeMQ代理。我有大約10位使用經紀人的消費者。我正在使用駱駝來配置我的路線。ActiveMQ消費者掛起

每隔一段時間,它都會掛起並且不會消耗新消息,即使我重新啓動使用者,即使隊列中有消息掛起。

我開始試圖通過逐個瀏覽我的消費者試圖複製問題來隔離發生這種情況的位置。我終於找到了一位消費者,我可以重新解決問題。它會在一段時間後掛起,但是,如果我轉到活動的MQ管理控制檯並嘗試查看隊列中的消息,它將再次開始運行。我認爲Jetty正在導致連接發生刷新網頁隊列,從而解除了我所遇到的一些線程問題。我應該如何調試?

感謝

+0

聽起來像是一個ActiveMq問題。如果你有這種情況,並開始一個新的客戶是他收到的消息? – Julias 2012-04-04 19:52:51

+0

不,不一定。我已經嘗試過關閉消耗,然後重新開始,並且它不會返回隊列以獲取消息。 – Derek 2012-04-04 20:59:20

回答

7

我的一位同事偶然發現「卡住」的消息到一些有趣的事情,我剛剛在網上找到了一個解釋:http://activemq.2283324.n4.nabble.com/Consumer-is-not-able-to-pick-messages-from-queue-td2531722.html

顯然有一個頁面大小,可以填充時,當你有一個選擇器和所有消息在同一隊列中。這一切都發生在我們身上 - 我還沒有開始使用消費者,所以我最終得到了一整頁消息,其中包含了針對不同消費者的選擇器,這導致我的正在運行的消費者無法獲得任何額外的工作。

0

對你來說太晚了,但是我遇到了同樣的問題,問題在於我試圖使用我使用的相同連接將事情添加到隊列中。

一旦我將它們分開(兩個完全不同的上下文,一個用於生產,另一個用於消費),問題自行解決。