阿里云消息队列 RocketMQ 5.0 全新升级:消息、事件、流融合处理平台
從“消息”到“消息、事件、流”的大融合
消息隊(duì)列作為當(dāng)代應(yīng)用的通信基礎(chǔ)設(shè)施,微服務(wù)架構(gòu)應(yīng)用的核心依賴,通過(guò)異步解耦能力讓用戶更高效地構(gòu)建分布式、高性能、彈性健壯的應(yīng)用程序。
從數(shù)據(jù)價(jià)值和業(yè)務(wù)價(jià)值角度來(lái)看,消息隊(duì)列的價(jià)值不斷深化。消息隊(duì)列中流動(dòng)的業(yè)務(wù)核心數(shù)據(jù)涉及集成傳輸、分析計(jì)算和處理等不同環(huán)節(jié)與場(chǎng)景。伴隨著不斷演進(jìn),我們可以預(yù)見(jiàn)消息隊(duì)列勢(shì)必在數(shù)據(jù)通道、事件集成驅(qū)動(dòng)、分析計(jì)算等場(chǎng)景不斷產(chǎn)生新價(jià)值,創(chuàng)造新的“化學(xué)反應(yīng)”。
RocketMQ 誕生于阿里巴巴內(nèi)部電商系統(tǒng),發(fā)展至今日,其核心架構(gòu)經(jīng)歷了多次關(guān)鍵演進(jìn):
早在 2007 年,淘寶電商系統(tǒng)做服務(wù)化拆分的時(shí)候,就誕生了第一代消息服務(wù) Notify,這是 RocketMQ 最早雛形。Notify 采用了關(guān)系型數(shù)據(jù)庫(kù)作為存儲(chǔ),使用推模式。在阿里淘寶這種高頻交易場(chǎng)景中,具有非常廣泛地應(yīng)用。
在 2007-2013 年期間,隨著阿里集團(tuán)業(yè)務(wù)發(fā)展,不僅需要交易場(chǎng)景異步調(diào)用,同時(shí)需要支持大量傳輸埋點(diǎn)數(shù)據(jù)、數(shù)據(jù)同步。此時(shí),內(nèi)部衍生出 MetaQ 以及 RocketMQ3.0 版本,這兩個(gè)版本開(kāi)始探索自研存儲(chǔ)引擎,采用了自研專有消息存儲(chǔ),支持了單機(jī)海量 Topic,并前瞻性地去除了 Zookeeper 等組件的外部依賴。在十年后的今天,我們看到去各種 keeper 已成為整個(gè)消息領(lǐng)域的發(fā)展主流。
經(jīng)歷了前三代的內(nèi)部業(yè)務(wù)打磨后,阿里巴巴積極參與開(kāi)源并將 RocketMQ3.0 貢獻(xiàn)到開(kāi)源社區(qū),并于 2017 年從 Apache 孵化器畢業(yè),成為中國(guó)首個(gè)非 Hadoop 生態(tài)體系的 Apache 社區(qū)頂級(jí)項(xiàng)目。此后,RocketMQ 也開(kāi)始服務(wù)于阿里云企業(yè)客戶。秉承開(kāi)源、商業(yè)、內(nèi)部三位一體發(fā)展策略,18 年發(fā)布的 4.x 版,在高可靠低延遲方面重點(diǎn)優(yōu)化,構(gòu)建了全新的低延遲存儲(chǔ)引擎和多場(chǎng)景容災(zāi)解決方案、并提供了豐富的消息特性。這也使得 RocketMQ 成為金融級(jí)的業(yè)務(wù)消息首選方案。
上個(gè)月社區(qū)發(fā)布了 RocketMQ5.0-preview 版,正式宣告 5.0 的到來(lái)。RocketMQ5.0 將不再局限于消息解耦的基本場(chǎng)景,更是通過(guò)統(tǒng)一內(nèi)核、存儲(chǔ)的優(yōu)勢(shì),提供消息、事件、流一體化的處理能力。
回顧 RocketMQ 發(fā)展的十余年,良好的社區(qū)環(huán)境和商業(yè)支持使得大量企業(yè)開(kāi)發(fā)者可以很方便的跟進(jìn)業(yè)務(wù)特點(diǎn)和訴求進(jìn)行選型和驗(yàn)證。在社區(qū)活躍影響力方面,RocketMQ 社區(qū)項(xiàng)目收獲 15000+Star,活躍的貢獻(xiàn)者有 400+ 位,多語(yǔ)言、生態(tài)連接等周邊活躍項(xiàng)目 30+ 個(gè),深受社區(qū)開(kāi)發(fā)者歡迎。在應(yīng)用規(guī)模方面,RocketMQ 作為金融級(jí)業(yè)務(wù)消息方案,積累了互聯(lián)網(wǎng)游戲、在線教育、金融證券、銀行、政企能源、汽車出行等眾多行業(yè)數(shù)以萬(wàn)計(jì)的企業(yè)客戶。同時(shí),在阿里巴巴內(nèi)部擔(dān)負(fù)業(yè)務(wù)核心鏈路,每天流轉(zhuǎn)萬(wàn)億級(jí)消息流量,扛過(guò)了歷屆雙十一的零點(diǎn)峰值。在行業(yè)評(píng)測(cè)方面,RocketMQ 也多次斬獲大獎(jiǎng)。
官宣:阿里云新一代 RocketMQ “消息、事件、流”融合處理平臺(tái)
今天發(fā)布阿里云消息隊(duì)列 RocketMQ 版 5.0,我們稱之為一站式“消息、事件、流”融合處理平臺(tái)。
新版本核心誕生兩大新亮點(diǎn),首先是消息核心場(chǎng)景的擴(kuò)展和布局,RocketMQ 5.0 不再局限于消息解耦場(chǎng)景,將全新布局事件驅(qū)動(dòng)和消息流式處理場(chǎng)景;其次則是一站式融合處理的技術(shù)架構(gòu)和趨勢(shì)。
“消息、事件、流”一站式融合處理的技術(shù)架構(gòu)可以實(shí)現(xiàn)一份消息存儲(chǔ),支持消息的流式計(jì)算、異步投遞、集成驅(qū)動(dòng)多種場(chǎng)景,極大地降低業(yè)務(wù)人員運(yùn)維多套系統(tǒng)的技術(shù)復(fù)雜度和運(yùn)維成本。可以說(shuō),無(wú)論是微服務(wù)的指令調(diào)用、異步通知,還是 CDC 變更日志、行為埋點(diǎn)數(shù)據(jù),亦或是資源運(yùn)維、審計(jì)事件,統(tǒng)一的 RocketMQ5.0 產(chǎn)品棧都能統(tǒng)一處理。
重大發(fā)布一:RocketMQ 基礎(chǔ)架構(gòu)全新升級(jí)
首先,最重要的升級(jí)是阿里云 RocketMQ 的技術(shù)架構(gòu)全面煥新。
全新的 RocketMQ5.0 版將通用的存儲(chǔ)邏輯下沉,集中解決消息存儲(chǔ)的多副本、低延遲、海量隊(duì)列分區(qū)等技術(shù)問(wèn)題,將上層的消息處理和剝離出完全的無(wú)狀態(tài)計(jì)算層,主要完成協(xié)議適配、權(quán)限管理、消費(fèi)狀態(tài)、可觀測(cè)運(yùn)維體系支持。得益于存算分離的架構(gòu)設(shè)計(jì),從 SDK 接入到線上運(yùn)維全鏈路帶來(lái)全面提升:
輕量版 SDK 的開(kāi)放和全鏈路可觀測(cè)系統(tǒng)的提升:同時(shí)支持 4.x 通信協(xié)議和全新的 gRPC 通信協(xié)議,并內(nèi)置 OpenTelemetry 埋點(diǎn)支持,新版本 SDK 新增了 10 余個(gè)指標(biāo)埋點(diǎn)。
消息級(jí)負(fù)載均衡:新版本 SDK 不再參與實(shí)際存儲(chǔ)隊(duì)列的負(fù)載均衡,消息負(fù)載均衡將更加輕量,以單條消息為調(diào)度最小單元。
多網(wǎng)絡(luò)訪問(wèn)支持:新版本支持單一實(shí)例同時(shí)暴露公網(wǎng)、內(nèi)網(wǎng)等訪問(wèn)形式,方便客戶多網(wǎng)絡(luò)接入訪問(wèn)。
海量分級(jí)存儲(chǔ):新版本開(kāi)放分級(jí)存儲(chǔ)歷史消息保存能力,消息低成本無(wú)大小限制,最長(zhǎng)保存 30 天。冷熱數(shù)據(jù)進(jìn)行分離設(shè)計(jì),極大降低消費(fèi)歷史消息對(duì)實(shí)例的性能影響。
重大發(fā)布二:RocketMQ Streaming 云上最佳實(shí)踐——消息ETL
消息基礎(chǔ)架構(gòu)的能力提升之外,阿里云 RocketMQ 在 Streaming 流式處理場(chǎng)景推出了輕量級(jí)消息 ETL 功能。
用戶在數(shù)據(jù)庫(kù)變更、終端數(shù)據(jù)上報(bào)、后臺(tái)埋點(diǎn)日志等場(chǎng)景產(chǎn)生的消息,典型的消費(fèi)場(chǎng)景就是數(shù)據(jù)清洗轉(zhuǎn)化,同時(shí)再存儲(chǔ)到外部的存儲(chǔ)和離線分析、在線分析系統(tǒng)中。傳統(tǒng)實(shí)現(xiàn)方案需要搭建 Flink 等重量級(jí)實(shí)時(shí)計(jì)算服務(wù)或者自建消費(fèi)應(yīng)用做消息處理。而使用商業(yè)版 RocketMQ ETL 功能,簡(jiǎn)單控制臺(tái)配置即可實(shí)現(xiàn)消息的清洗和轉(zhuǎn)化。RocketMQ ETL 功能有三大優(yōu)勢(shì):
輕量無(wú)依賴:作為阿里云消息原生功能,使用時(shí)不需要部署外部計(jì)算服務(wù)或消費(fèi)程序,方案更輕量。
開(kāi)發(fā)門檻低:內(nèi)置常見(jiàn)清洗轉(zhuǎn)化模板,滿足絕大多數(shù)消息內(nèi)容處理需求,并支持用戶快速編寫自定義函數(shù)來(lái)支持特殊的業(yè)務(wù)邏輯。整體開(kāi)發(fā)成本非常低,1 小時(shí)即可完成業(yè)務(wù)上線。
Serverless 彈性:無(wú)需預(yù)先估算容量,采取 Serverless 無(wú)服務(wù)器模式,實(shí)現(xiàn)按需彈性伸縮。
?
重大發(fā)布三:EDA 云上最佳實(shí)踐——事件中心 EventBridge
本次 RocketMQ 最后一個(gè)發(fā)布點(diǎn)是在事件驅(qū)動(dòng)的業(yè)務(wù)場(chǎng)景的布局和演進(jìn)。早在 2018 年,Gartner 評(píng)估報(bào)告將 EDA(Event-Driven-Architecture) 列為十大戰(zhàn)略技術(shù)趨勢(shì)之一,事件驅(qū)動(dòng)架構(gòu)將成為未來(lái)微服務(wù)主流。我們首先下一個(gè)定義:
事件驅(qū)動(dòng)其本質(zhì)是對(duì)消息驅(qū)動(dòng)的再升級(jí),是企業(yè)IT架構(gòu)深度演進(jìn)的下一個(gè)必然階段。
事件驅(qū)動(dòng)架構(gòu)和消息驅(qū)動(dòng)架構(gòu)的區(qū)別和關(guān)聯(lián)主要集中于以下三點(diǎn):
EDA 更加強(qiáng)調(diào)深層次解耦:消息驅(qū)動(dòng)是同一業(yè)務(wù)、組織系統(tǒng)內(nèi)不同組件之間在技術(shù)架構(gòu)層面的調(diào)用解耦,其信息封裝和處理都是有預(yù)期、預(yù)定義的。事件驅(qū)動(dòng)適配是更寬泛的業(yè)務(wù)、組織系統(tǒng),基于事件的解耦上下游之間無(wú)需有預(yù)期和行為定義,上下游統(tǒng)一遵循標(biāo)準(zhǔn)化的規(guī)范,這是更深度的解耦。
EDA 更加強(qiáng)調(diào)連接能力:消息驅(qū)動(dòng)更多是單一系統(tǒng)內(nèi)的調(diào)用,而事件驅(qū)動(dòng)往往會(huì)涉及到不同的地域、賬戶主體以及三方 SaaS 的協(xié)同,事件驅(qū)動(dòng)的一大特征就是生態(tài)的強(qiáng)連接能力。
EDA 更加強(qiáng)調(diào) Serverless 低代碼開(kāi)發(fā):類比于消息和微服務(wù)的協(xié)同關(guān)系,未來(lái)業(yè)務(wù)架構(gòu) Serverless 化的大趨勢(shì)會(huì)推動(dòng)業(yè)務(wù)開(kāi)發(fā)模式逐步轉(zhuǎn)向低代碼配置化。事件驅(qū)動(dòng)的另一大特征就是低代碼開(kāi)發(fā),基于豐富的工具能力,業(yè)務(wù)側(cè)不需要像消息驅(qū)動(dòng)一樣編寫大量的生產(chǎn)消費(fèi)代碼。
因此,阿里云統(tǒng)一事件中心 EventBridge 產(chǎn)品帶來(lái)如下能力:
統(tǒng)一標(biāo)準(zhǔn)化的事件集成生態(tài):作為阿里云事件中心,集成 80 余款云產(chǎn)品的業(yè)務(wù)事件,支持 800 多種事件類型,用戶使用 EventBridge 可以一次性管理所有云產(chǎn)品資源的變更、操作使用事件,避免對(duì)接多個(gè)產(chǎn)品接口的重復(fù)性勞動(dòng)。
全球事件互通網(wǎng)絡(luò):貫徹事件驅(qū)動(dòng)強(qiáng)連接的屬性能力,本次發(fā)布了全球事件互通網(wǎng)絡(luò),首批支持國(guó)內(nèi)五大地域事件互通。企業(yè)客戶簡(jiǎn)單配置即可實(shí)現(xiàn)跨賬號(hào)、跨地域、跨網(wǎng)絡(luò)的事件聚合和流轉(zhuǎn)。
Serverless 低代碼開(kāi)發(fā):內(nèi)置十余種事件目標(biāo)和處理模板,涵蓋了大多數(shù)業(yè)務(wù)場(chǎng)景,客戶簡(jiǎn)單配置、低代碼,無(wú)需部署服務(wù)即可完成事件的驅(qū)動(dòng)和處理。
面向未來(lái):堅(jiān)定推動(dòng)“消息、事件、流”大融合的發(fā)展
RocketMQ5.0 的發(fā)布標(biāo)志著阿里云消息從消息領(lǐng)域正式邁向了“消息、事件、流”場(chǎng)景大融合的新局面。未來(lái)阿里云消息產(chǎn)品的演進(jìn)也將繼續(xù)圍繞消息、事件、流核心場(chǎng)景而開(kāi)展。消息基礎(chǔ)架構(gòu)本身也必將步伐不斷,繼續(xù)朝著 Serverless 彈性、強(qiáng)容災(zāi)能力、可觀測(cè)免運(yùn)維方向推進(jìn),給客戶帶來(lái)高性能、高可靠、強(qiáng)容災(zāi)的高 SLA 服務(wù);并在 Streaming 的場(chǎng)景會(huì)基于客戶業(yè)務(wù)訴求,聯(lián)合生態(tài)產(chǎn)品持續(xù)推出更多的消息處理計(jì)算服務(wù);打造面向未來(lái)的企業(yè)集成模式,聯(lián)合生態(tài)伙伴和開(kāi)源社區(qū)大力推動(dòng)事件驅(qū)動(dòng)進(jìn)一步發(fā)展。
點(diǎn)擊“下方鏈接”👇,觀看企業(yè)級(jí)互聯(lián)網(wǎng)架構(gòu)分論壇重要回顧。
https://yunqi.aliyun.com/2021/agenda/session184
了解更多消息隊(duì)列 RocketMQ5.0 相關(guān)信息,請(qǐng)搜索微信號(hào)(AlibabaCloud888)添加云原生小助手!入群即可獲云原生一手資訊~
總結(jié)
以上是生活随笔為你收集整理的阿里云消息队列 RocketMQ 5.0 全新升级:消息、事件、流融合处理平台的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 业内首款云原生技术中台产品云原生 Sta
- 下一篇: Thoughtworks 正式成为阿里云