Activemq 問題記錄1

問題描述:
producer插入MQ的時候出現,客戶端插入消息失敗,提示服務器無命令應答返回的情況,讓用戶檢查broker的有效性。
詳細的錯誤信息就不列了。
MQ服務器端日誌輸出[INFO]Transport failed: java.io.EOFException | org.apache.activemq.broker.TransportConnection.Transport

問題原因:

MQ配置文件裏配置了ProducerFlowControl='true',而且memorylimit過小導致的。
這個策略生效的方式是在它的策略裏配置
<pendingQueuePolicy>
     <vmQueueCursor />
</pendingQueuePolicy>
纔會生效。所以如果爲了防止內存使用過大,可以配置相應的屬性。但是,一定要設置好內存限制,否則就會出現上面的錯誤。


解決方式:
1、配置合理的限制。
2、另外就是去掉這個配置項。

注,當隊列中數據過大的時候,雖然沒有配置這個限制,也一樣會出現相同的問題,所以最好不要盲目的堆積消息。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章