Spring Cloud阿里巴巴是建立分散式應用程式的綜合解決方案,與阿里巴巴中間件無縫整合。它透過提供必要組件的一站式服務並需要最少的配置來簡化開發。本文檔詳細介紹了其功能、組件、使用和貢獻指南。
阿里巴巴Spring雲
阿里巴巴維護的專案。
中文自述文件請參閱中文文檔。
Spring Cloud阿里巴巴為分散式應用開發提供一站式解決方案。它包含開發分散式應用程式所需的所有元件,讓您可以輕鬆地使用 Spring Cloud 開發應用程式。
使用Spring Cloud阿里巴巴,您只需要添加一些註解和少量的配置即可將Spring Cloud應用程式連接到阿里巴巴的分散式解決方案,並使用阿里巴巴中間件建立分散式應用系統。
特徵
有關更多功能,請參閱路線圖。
除了上述功能外,針對企業用戶場景的需求,Spring Cloud Ali企業版的微服務引擎(MSE)提供了企業級微服務治理中心,其中包括灰階發布、服務等更強大的治理能力預熱、無損線上和離線以及異常值剔除。同時也提供企業級Nacos註冊/配置中心、企業級雲端原生網關等多種產品與解決方案。
成分
Sentinel:Sentinel以「流量」為切入點,提供流控、併發、熔斷、負載保護等方面的解決方案,保障服務穩定性。
Nacos:一個易於使用的動態服務發現、配置和服務管理平台,用於建立雲端原生應用程式。
RocketMQ:低延遲、高效能、高可靠性、兆級容量、靈活擴展的分散式訊息和串流媒體平台。
Seata:以微服務架構為導向的高效能、易用的分散式事務解決方案。
阿里雲OSS:一種加密且安全的雲端儲存服務,可以儲存、處理和存取來自世界任何地方的大量資料。
阿里雲簡訊:覆蓋全球的簡訊服務,提供便利、有效率、智慧的溝通能力,幫助企業快速聯繫客戶。
阿里雲SchedulerX:精準、高可靠、高可用的定時作業排程服務,秒數回應。
有關更多功能,請參閱路線圖。
如何建造
Spring Cloud 使用 Maven 進行大多數與建置相關的活動,您應該能夠透過複製您感興趣的專案並輸入以下內容來快速開始工作:
如何使用
新增maven依賴
這些工件可透過 BOM 從 Maven Central 和 Spring Release 儲存庫取得:
將模組新增到依賴項。如果您想選擇舊版本,可以參考發行說明。
範例
我們的專案中包含了 spring-cloud-alibaba-examples 模組,可協助您快速開始使用 Spring Cloud Obama。它包含一個範例,您可以參考範例專案中的自述文件來快速演練。
例子:
哨兵範例
Nacos 範例
RocketMQ範例
阿里雲OSS範例
版本控制指南
項目的版本號碼以xxx的形式表示,其中x是數字,從0開始,不限於0~9的範圍。當專案處於孵化器階段時,版本號碼為0.xx
由於Spring Boot 1和Spring Boot 2的Actuator模組中的介面和註解發生了較大的變化,並且spring-cloud-commons從1.xx到2.0.0也發生了很大的變化,所以我們採用相同的版本規則SpringBoot版本號。
行為守則
該項目是Spring Cloud的子項目,遵守貢獻者契約行為準則。透過參與,您應該遵守此準則。請將不可接受的行為回報至 [email protected]。
代碼約定與內務管理
這些對於拉取請求來說都不是必要的,但它們都會有所幫助。它們也可以在原始拉取請求之後、合併之前新增。
使用 Spring 框架程式碼格式約定。如果您使用 Eclipse,則可以使用 Spring Cloud Build 專案中的 eclipse-code-formatter.xml 檔案匯入格式化程式設定。如果使用 IntelliJ,您可以使用 Eclipse Code Formatter 外掛程式匯入相同的檔案。
確保所有新的 .java 檔案都有一個簡單的 Javadoc 類別註釋,其中至少有一個 @author 標記來識別您,並且最好至少有一段說明該類別的用途。
將 ASF 許可證頭註釋新增至所有新的 .java 檔案(從專案中的現有檔案複製)
將自己作為 @author 添加到您進行重大修改(不僅僅是外觀更改)的 .java 檔案中。
添加一些 Javadocs,如果更改命名空間,也添加一些 XSD 文件元素。
一些單元測試也會有很大幫助——必須有人來做。
如果沒有其他人在使用您的分支,請根據目前 2023.x(或主專案中的其他目標分支)對其進行變基。
編寫提交訊息時請遵循以下約定,如果您要修復現有問題,請在提交訊息末尾新增 Fixes gh-XXXX(其中 XXXX 是問題編號)。
聯絡我們
建議使用郵件清單來討論與 spring-cloud-alibaba 相關的幾乎所有內容。
[email protected]:如果您在使用或開發 spring-cloud-alibaba 時遇到任何問題,可以在這裡提問。