公司的後臺服務使用了Rabbitmq,在開發過程中,發現存在消息丟失問題,於是只能去盤RabbitMq-_-。使用RabbitMq不僅僅是向其發消息,收消息就完事,還要去關注它的狀態,在使用過程中,發現RabbitMq使用方式很像Mysql。
首先,我們使用RabbitMq不是發消息,收消息就完事,我們得查看RabbitMq的運行情況,看消息的生產和消費情況,這就得依賴其Manage UI和rabbitmqctl,這個就類似與mysql workbench或者Navicat。使用好這Manage UI,可以解決90%以上的問題。並且從這個ManageUI可以學習RabbitMQ的很多概念,比如virtual-host的概念,就像DB中的邏輯數據庫,實現了邏輯隔離,並且其有一個默認的名字"/"。同時在Exchange頁面,可以看到Exchange的四種類型:direct,topic,faout,headers。
而對於Queue,我們比較關心的就是其ack。
參考資料: