電子商務平臺源碼請加企鵝求求:叄伍叄六貳四柒二伍九。RocketMQ出自阿里公司的開源產品,用 Java 語言實現,在設計時參考了 Kafka,並作出了本身的一些改進,消息可靠性上比 Kafka 更好。RocketMQ在阿里集團被普遍應用在訂單,交易,充值,流計算,消息推送,日誌流式處理,binglog分發等場景。java
RocketMQ的主要特性有:c++
是一個隊列模型的消息中間件,具備高性能、高可靠、高實時、分佈式特色;web
Producer、Consumer、隊列均可以分佈式;分佈式
Producer向一些隊列輪流發送消息,隊列集合稱爲Topic,Consumer若是作廣播消費,則一個consumer實例消費這個Topic對應的全部隊列,若是作集羣消費,則多個Consumer實例平均消費這個topic對應的隊列集合;工具
可以保證嚴格的消息順序;性能
提供豐富的消息拉取模式;命令行
高效的訂閱者水平擴展能力;設計
實時的消息訂閱機制;日誌
億級消息堆積能力;中間件
較少的依賴;
RocketMQ的優勢有:
單機支持 1 萬以上持久化隊列;
RocketMQ 的全部消息都是持久化的,先寫入系統 PAGECACHE,而後刷盤,能夠保證內存與磁盤都有一份數據;
模型簡單,接口易用(JMS 的接口不少場合並不太實用);
性能很是好,能夠大量堆積消息在broker中;
支持多種消費,包括集羣消費、廣播消費等。
各個環節分佈式擴展設計,主從HA;
RocketMQ的缺點有:
支持的客戶端語言很少,目前是java及c++,其中c++不成熟;
RocketMQ社區關注度及成熟度也不及前二者;
沒有web管理界面,提供了一個CLI(命令行界面)管理工具帶來查詢、管理和診斷各類問題;
沒有在消息隊列的核心部分實現JMS等接口;