上周,我們舉辦了第二屆技術(shù)沙龍,我這邊主要演講了消息隊(duì)列技術(shù)的議題,現(xiàn)分享給大家:
在我們團(tuán)隊(duì)內(nèi)部,隨著消息應(yīng)用中心(任務(wù)中心)的廣泛應(yīng)用,有時(shí)候我們感覺(jué)不到消息隊(duì)列的存在,但這不影響消息隊(duì)列在高可用、分布式、高并發(fā)架構(gòu)下的核心地位。
消息隊(duì)列都應(yīng)用到了哪些實(shí)際的應(yīng)用場(chǎng)景中?
一、再談消息隊(duì)列的應(yīng)用場(chǎng)景
異步處理:例如短信通知、終端狀態(tài)推送、App推送、用戶注冊(cè)等
數(shù)據(jù)同步:業(yè)務(wù)數(shù)據(jù)推送同步
重試補(bǔ)償:記賬失敗重試
系統(tǒng)解耦:通訊上下行、終端異常監(jiān)控、分布式事件中心
流量消峰:秒殺場(chǎng)景下的下單處理
發(fā)布訂閱:HSF的服務(wù)狀態(tài)變化通知、分布式事件中心
高并發(fā)緩沖:日志服務(wù)、監(jiān)控上報(bào)
但是,我們對(duì)消息隊(duì)列的底層技術(shù)和原理還是不了解,那么我們馬上開(kāi)始吧…
二、消息隊(duì)列的一些基本概念和簡(jiǎn)單原理
1. Broker
Broker的概念來(lái)自與Apache ActiveMQ,通俗的講就是MQ的服務(wù)器。
2. 消息的生產(chǎn)者、消費(fèi)者
消息生產(chǎn)者Producer:發(fā)送消息到消息隊(duì)列。
消息消費(fèi)者Consumer:從消息隊(duì)列接收消息。
3. 點(diǎn)對(duì)點(diǎn)消息