[rabbitMQ]一、rabbitMQ的簡單介紹

官網地址:https://www.rabbitmq.com/

關於消息隊列(MQ)

推薦博客地址:https://blog.csdn.net/fygu18/article/details/80863596

消息隊列中間件是分佈式系統中重要的組件,主要解決應用耦合,異步消息,流量削鋒等問題。實現高性能,高可用,可伸縮和最終一致性架構。
使用較多的消息隊列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ

應用場景一:應用解耦:
1.訂單系統和庫存系統的解耦。
下單後,訂單系統寫入消息隊列,訂單系統訂單狀態直接成功,不會受到庫存系統的影響。

應用場景二:流量削峯:
1.秒殺活動,一般會因爲流量過大,導致流量暴增,應用掛掉
應用前端引入消息隊列:用戶的請求,服務器接收後,首先寫入消息隊列。假如消息隊列長度(即請求秒殺接口的用戶量)超過最大數量(允許最大的秒殺人數),直接丟棄數據,返回給客戶端秒殺失敗。

應用場景三:異步處理:
1. 應用註冊的短信通知。
註冊成功之後,直接返回客戶端註冊成功的消息,異步發送註冊成功的短信或者郵件通知給用戶,客戶端不需要等待。

應用場景四:日誌處理:
日誌採集客戶端:負責日誌數據採集,定時或者實時寫入隊列;
消息隊列:負責日誌數據的接收,存儲和轉發;
日誌處理應用:訂閱並消費kafka隊列中的日誌數據。

應用場景五:消息通訊:
1. 聊天室

rabbitMQ和其他消息隊列的比較

推薦博客地址:https://www.jianshu.com/p/251b76643d47
RabbitMQ是實現了高級消息隊列協議(AMQP)的開源消息代理軟件(亦稱面向消息的中間件)。RabbitMQ服務器是用Erlang語言編寫的,而集羣和故障轉移是構建在開放電信平臺框架上的。所有主要的編程語言均有與代理接口通訊的客戶端庫。

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