?
Apache Dubbo是框架一款高性能的Java RPC框架,主要用于實(shí)現服務(wù)的框架輸出和輸(╯°□°)╯入功能,在微服務(wù)架構下解決服務(wù)治理與通信問(wèn)題????蚣?/p>(圖片來(lái)源網(wǎng)絡(luò ),框架侵刪)
D??ubbo框架由阿里巴己公司開(kāi)源,框架并得到廣泛運用,框架其核心包括遠程通訊、框架集(/ω\)群容錯以??及自動(dòng)發(fā)現三大部分,框架旨在提供透明化的框架遠程方法調用方案,以及SOA服務(wù)治理方案,框架??┐(′ー`)┌在分布式的框架環(huán)境中,Dubbo可以替代消息中間件或Web Service模式中的WSdl,以服務(wù)者和消費者的方式在節點(diǎn)間進(jìn)(jin)行注冊和調用。
Dubbo主要包含以下幾大核心能力:
1、面向接口的遠程方法調用:
可以通過(guò)簡(jiǎn)單的配置實(shí)現對遠(⊙_⊙)程方法的調用,就像調用(yong)本地方法一樣,沒(méi)有任何API侵入。
這種調用方式減少了因(′?_?`)直接調用帶來(lái)的依賴(lài)問(wèn)題,提高了系統的靈活性和可維護性。
(圖片來(lái)源網(wǎng)絡(luò ),侵刪)2、智能容錯和負載均衡:┐(′д`)┌
支持軟負載均衡及多種容錯機制,能夠在出現調用失敗時(shí)自動(dòng)選擇其他可用服務(wù)提供者。
在內網(wǎng)中(T_T)可替代F5等硬件負載均衡器,有效降低成本,減少單點(diǎn)風(fēng)險(??ヮ?)?*:???。
3、服務(wù)自動(dòng)注冊和發(fā)現:
服務(wù)提供者可以在啟動(dòng)時(shí)向注冊中心注冊??自己提供的服務(wù),而服務(wù)消費者則可以訂閱需要的服務(wù)。
(圖片來(lái)源???網(wǎng)絡(luò ),侵刪)基于注冊中心(如Zookeeper)的目錄服務(wù),動(dòng)態(tài)推送服??務(wù)提供??者的地址變更信息,使得服務(wù)消費方能夠實(shí)時(shí)獲取最新的服務(wù)提供者列表。
4(?????)、高性ヽ(′▽?zhuān)?ノ能RPC調用:
采用NIO框架封裝的多種線(xiàn)程模型、序列化方式及信息交換模ヾ(?■_■)ノ式,支持異步調用和請求響應模式。
通過(guò)多協(xié)議支持優(yōu)化網(wǎng)絡(luò )通信,提高調用ˉ\_(ツ)_/ˉ效率和系統吞吐量。
5、服務(wù)治理與監控:
提供詳細的服務(wù)治理??功能,包括流量調度、服務(wù)發(fā)現、服務(wù)分發(fā)等。
內置監ヽ(′ー`)ノ控中心,統計服務(wù)調用次數和時(shí)間,幫助及時(shí)發(fā)現并解決潛在問(wèn)題。
6、高度可擴展性(?Д?):
設計為高度可擴展的框架,用戶(hù)可以輕松實(shí)現流量攔截、選址等各種定制邏輯。
Dubbo提供了豐富的擴(╬?益?)展接口和實(shí)現類(lèi)??,允許用戶(hù)根據具體需求進(jìn)行靈活擴展。
7、全面的社區支持:
作為Apache基金會(huì )的頂級項目,Dubbo擁有一個(gè)活躍的社區和豐富的文檔資源,支持多語(yǔ)言SDK,包括Java和Golang。
自2018年從阿里巴巴捐獻給Apache基金會(huì )后,Dubbo得到了更廣泛的開(kāi)發(fā)和支持。
8、云原生基礎設施適配:
Dubbo3在保持原有核心特(te)性的同時(shí),全面升級了(′?_?`)易用性、超大規模微服務(wù)實(shí)踐和云原生基礎設施適配能(neng)力。
支持現代云原生部署環(huán)境,適應容器化、微服務(wù)化的趨勢。