rabbitmq 消息隊列堆積問題

項目遇到mongo數據恢復的問題,首先我從原項目中將數據導出,然後恢復到指定的服務器,以爲就好了。

但是遇到一個 問題,就是rabbitmq的消息隊列出現了消息堆積,剛開始我以爲是rabbitmq服務的問題,但是消息隊列偶爾又會出現一兩次被消費的情況。

這時我查看系統的cup的使用率,發現mongo這個進程的使用率很高,內存使用率也很高,這時,我使用命令db.currentOp()查看Mongo在執行的任務,發現它總是從一張表中進行了全局掃描,使用命令db.<集合名稱>.storageSize()查看這張表的大小,發現居然有30多個G的數據量。然後百度了一下,具體的原因如下:

mongo佔有cpu和內存資源很高,導致磁盤的讀寫率降低,從而導致消息隊列堆積的問題,此時,我對這張表建立了索引操作,完成以後,cpu和內存明顯降低,消息隊列也不再出現消息堆積的問題。

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