消息中間件的意義和應用場景


消息中間件一般兩個功能,解耦和異步處理,分別舉個例子吧

解耦合:
比如我們做一個微博產品中的好友系統,就很需要使用消息中間件
當我們添加一個關注的時候, 涉及以下幾個子系統

推薦系統,需要根據你關注的人給你做數據分析
搜索系統,需要根據你的數據建立索引
feed系統,需要根據你關注的人,發送一條新鮮事
統計系統 用於數據統計,了解產品情況

而如果直接在加關注的流程里進行這些操作,可能帶來風險,所以,會引入mq來解耦合,因此就像你說的,一般是 "單向傳輸" 的(當然這不是絕對的,取決於你系統復雜度),而且發往mq的數據一般都不大,比如 from_uid, to_uid 就行了,一般都不會很大,如果發送的數據不滿足你的要求,這個時候,需要調用好友系統提供的接口了

異步處理:
有的時候,我們一個操作可能會耗時比較久,所以,並不會在主要業務流程里進行處理
比如,我們在刪除一個用戶的時候,可能會有很多關聯數據的操作,為了盡快的響應以及解耦合,我們會將這個消息發送給其他系統,讓它們根據需求自己處理          


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM