EDAS支援Apache Dubbo微服務架構,您在Apache Dubbo架構下開發的微服務只需添加依賴和修改配置,對代碼無侵入,即可部署到EDAS之後,擷取EDAS企業級的微服務應用託管、微服務治理、監控警示和應用診斷等能力。
Dubbo架構
開源Dubbo目前包含兩個主流版本:2.6.x和2.7.x。
- 2.6.x:是目前廣泛使用的版本,還會繼續維護,但不會增加新功能。
- 2.7.x:是Apache Dubbo最新的版本,會不斷增加新功能。
所以,推薦使用的是2.7.x版本。如果您使用的是2.6.x版本,也建議您遷移到2.7.x版本,以便使用不斷增加的新功能。
Dubbo服務架構的工作流程如下:
- 提供者在啟動時,在註冊中心註冊服務。
- 消費者在啟動時,在註冊中心訂閱所需的服務。
- 註冊中心返回提供者地址清單給消費者。如果提供者發生變更,註冊中心將推送變更資料給消費者。
- 消費者基於軟負載平衡演算法,從提供者地址清單中選一個提供者進行調用。
Dubbo應用託管到EDAS的含義
Dubbo應用託管到EDAS的核心是三個中心的託管:註冊中心、配置中心和中繼資料中心。
託管前後架構如下圖所示:
- 託管到EDAS前:
您需要自行搭建、維護註冊中心、配置中心和中繼資料中心。註冊中心為ZooKeeper或Nacos等開源組件,配置中心和中繼資料中心包含在Dubbo Admin中。
- 託管到EDAS後:
- EDAS提供Nacos(包含註冊中心、配置中心和中繼資料中心)和Dubbo服務治理平台。您不需要搭建、維護這些組件,也無需關注這些組件的可用性,並且還可以使用比自建Dubbo Admin更強大的微服務治理平台。
- 您也可以繼續使用自建或由MSE託管的ZooKeeper、Nacos或Eureka註冊中心。同時,正常使用EDAS提供的微服務治理能力。
中心類型 | 開源組件 | EDAS組件 | 託管說明 |
註冊中心 |
|
| 您只需將應用部署到 EDAS 中,即可預設接入註冊中心。 |
配置中心 |
| Nacos(推薦) | 您只需將應用部署到EDAS中,即可預設接入配置中心。 |
中繼資料中心 |
| Nacos(推薦) | 您只需將應用部署到EDAS中,即可預設接入中繼資料中心。 |
Dubbo應用託管到EDAS的價值
將Dubbo應用託管到EDAS,您只需要關注Dubbo應用自身的邏輯,無需關注註冊中心、配置中心和中繼資料中心的搭建和維護。託管後還可以使用EDAS提供的Auto Scaling、限流降級、監控及微服務治理能力,而且整個託管過程對您來說是完全透明的,不會增加理解和開發成本。託管的具體價值如下:
- 成本:無需自行營運Eureka、ZooKeeper、Consul等中介軟體組件,可以直接使用EDAS提供的服務發現和組態管理能力。
- 部署:EDAS提供了啟動參數靈活配置、流程可視化、服務優雅上下線和分批發布等功能,讓您的應用部署可配、可查、可控。
- 服務治理:EDAS提供了服務查詢、條件路由、黑白名單、標籤路由、動態配置、負載平衡配置、權重配置和統一組態管理,您可以對應用進行全面的服務治理。
- Auto Scaling:EDAS提供了Auto Scaling功能,您可以根據流量高峰和低穀即時地為應用擴容和縮容。
- 限流降級:EDAS提供了限流降級功能,保證您的應用可用性。
- 監控:EDAS整合了ARMS的部分監控功能,除了基本的執行個體資訊查詢外,您還可以查詢微服務調用鏈、服務調用拓撲和慢SQL。
相關操作
EDAS支援多種Dubbo微服務應用的開發方式:
如需使用Spring Boot開發Dubbo微服務應用,請參見使用Spring Boot開發Dubbo微服務應用。