Dubbo 3.0 即將到來

Dubbo 3.0重大革新

據瞭解,新的 Dubbo 內核與 Dubbo 2.0 完全不同,但它兼容 2.0。Dubbo 3.0 將以 Streaming 爲內核,而不再是 2.0 時代的 RPC,但是 RPC 會在 3.0 中變成遠程 Streaming 對接的一種可選形態。樑飛給出了一個內核接口:Streaming docking(Streaming),他說一切服務治理將圍繞這個內核接口進行擴展。而 Streaming 通道與 gRPC 類似,支持 HTTP/2,同時 REST 接口也會受到一等公民支持,但是樑飛也表示此次在通訊上的改動並不大,重點是在服務治理和編程模型上。

說到編程模型的革新,樑飛透露,此次 Dubbo 3.0 能夠開工,主要也是因爲新特性將去掉一切阻塞,以“一切同步”爲第一目標,在對 IO 密集業務的處理上,它能夠提高機器利用率,使得一半機器的成本被節省下來。他還表示,其實 Dubbo 3.0 技術選型重大變更的驅動因素,也就是降低成本,因爲在將系統服務化後,全業務線的機器都在等待返回數據,負載壓不上去,機器浪費嚴重。

這個去阻塞化的模式,其實就是使用了“反應式編程”模式(Reactive Programming),樑飛介紹,在 Dubbo 3.0 中,reactive 將成爲核心,會做到客戶端、服務端、緩存和數據庫,全程無阻塞。在數據庫上,JDBC 驅動將進行更改,同時,爲了性能,還會配合使用阿里畢玄對 JVM 協程的改造。更爲重要的是,這個重大變更,不僅體現在 Dubbo 上,它也將影響到阿里 10 年來積累的中間件。

羣裏有人問到是否會採用 Service Mesh,樑飛表示,Dubbo 3.0 將支持可選 mesh,多加一層 IPC,這主要是爲了兼容老系統;而內部則會優先嚐試內嵌模式。他說代理模式 Ops 可獨立升級框架,減少業務侵入,而內嵌模式可以帶業務測試、部署節點少、穩定性檢測方便。同時,可以將 Dubbo 3.0 啓動爲獨立進程,由 dubbo-mesh 進行 IPC,路由、負載均衡和熔斷機制將由獨立進程控制。

拭目以待

據說,目前Dubbo 3.0 已正式投入全職開發梯隊,初步 Runtime 已在驗證,3 月底將在線上應用投入使用。

自去年11月份阿里公開宣佈 重啓維護Dubbo 之後,大家一直在關注着Dubbo 的進展。今天這樣一個小道消息的爆出,讓大家很是興奮,希望Dubbo真正完成涅磐重生!

開源地址

Dubbo GitHub地址:https://github.com/alibaba/dubbo

發佈了141 篇原創文章 · 獲贊 17 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章