PHP如何取得ActiveMQ的狀態
在測試ActiveMQ過程中,發現發生下面狀況時,ActiveMQ可能就會出現異常的狀況 當queue內累積過多的筆數 當queue內累積太多的資料內容 要多少筆數?多少資料量?才可能出現異常呢?官方資料中,沒有找到明確的數據。 根據測試的經驗,這個數字依舊和機器等級有差。當procedure往queue塞資料的速度大於consumer消化速度,讓queue內的資料筆數一直累積上去。會導致consumer處理速度越來越慢、惡性循環下去。其實,procedure的處理能力,也會越來越差。 如果queue繼續累積下去,會出現無法連到ActiveMQ。甚至WEB管理介面也失效、最後要重新啟動ActiveMQ。最慘的狀況是,當重新啟動後,還要將剛剛的queue刪除,才能恢復正常。 也曾遇過一個狀況,ActiveMQ的主機,最後因stock吃完而無法服務。 因此,需要監控ActiveMQ的狀況。或者,在procedure中檢查queue內的數量,作為後續處理的依據。(當然,還是要看怎麼規劃、運用ActiveMQ) 如何以PHP+STOMP取得ActiveMQ的資訊呢?