rabbitmq消息存在哪里 rabbitmq是零拷貝技術嗎?
rabbitmq是零拷貝技術嗎?Rabbitmq不是零拷貝技術。rabbitmq是一個分布式消息隊列,用來解耦實現(xiàn)異步和流量控制。系統(tǒng)架構中,消息中間件起到了什么作用?消息中間件有三個主要功能:系統(tǒng)間
rabbitmq是零拷貝技術嗎?
Rabbitmq不是零拷貝技術。rabbitmq是一個分布式消息隊列,用來解耦實現(xiàn)異步和流量控制。
系統(tǒng)架構中,消息中間件起到了什么作用?
消息中間件有三個主要功能:系統(tǒng)間的解耦、異步和流量調峰。我們用例子來說明。
1系統(tǒng)間的解耦假設你在一個電子商務系統(tǒng)中購物。支付成功后,系統(tǒng)該如何告訴物流系統(tǒng)這個消息?有兩種思考
方法一:支付系統(tǒng)直接調用物流系統(tǒng)。就會出現(xiàn)一個問題:支付系統(tǒng)和物流系統(tǒng)有很強的依賴性。當物流系統(tǒng)出現(xiàn)問題時,會直接影響到用戶 的交易流程,并導致支付失敗。
二:支付系統(tǒng)向消息中間件推送支付成功消息,交易流程結束。物流系統(tǒng)訂閱該消息以進行后續(xù)處理。這樣,即使物流系統(tǒng)出現(xiàn)問題,也不會影響交易系統(tǒng)。
2異步化假設物流系統(tǒng)處理業(yè)務需要100毫秒。
方法一:全鏈路響應時間增加100毫秒,耗時增加。
方法二:不需要增加100毫秒的全鏈路時長,這就是異步帶來的性能提升。
3.假設雙11商家做秒殺活動,每秒產生大量訂單數(shù)據(jù)。
沒有必要采用第一種方法:支付系統(tǒng)的壓力會轉移到物流系統(tǒng)。
方法二:物流系統(tǒng)可以根據(jù)系統(tǒng)能力勻速拉數(shù)據(jù)處理,減少高峰流量。
請注意。請點擊關注按鈕【IT胖子】繼續(xù)為大家貢獻互聯(lián)網(wǎng)和技術干貨。謝謝你的支持。