重磅!Seata 加入 Apache!!

来源:https://www.cnblogs.com/javastack/archive/2023/11/17/17838752.html
-Advertisement-
Play Games

大家好,我是棧長。 今天給大家宣佈一個重大消息,又一國產項目宣佈加入 Apache,那就是 Alibaba 開源的分散式事務開源項目:Seata,Apache Seata 來了! 恭喜 Seata 成功加入 Apache 孵化器,走向全球。 說到 Seata,相信使用 Spring Cloud Al ...


大家好,我是棧長。

今天給大家宣佈一個重大消息,又一國產項目宣佈加入 Apache,那就是 Alibaba 開源的分散式事務開源項目:SeataApache Seata 來了!

恭喜 Seata 成功加入 Apache 孵化器,走向全球。

說到 Seata,相信使用 Spring Cloud Alibaba 的小伙伴並不陌生,它是 Spring Cloud Alibaba 生態中的重要組件之一,也是國產分散式事務的重要開源項目,致力於在微服務架構下提供高性能和簡單易用的分散式事務服務。

最近,Seata 捐贈給了 Apache 基金會,並通過了 Apache 基金會的投票決議,以全票的優秀表現加入 Apache 的孵化器項目,如下方郵件所示:

來源:https://lists.apache.org/thread/srxq8tqc9ssg6110xy5kwyqll549yrbm

這次投票包含了 13 個約束性投票和 6 個無約束性投票,所有的投票都持贊同意見,沒有棄權票和反對票。

這意味著 Seata 不只是國內開發者認可的分散式事務解決方案,更是得到了國際開源社區 Apache 的認可,這是對 Seata 項目本身的一種認可,也是對其背後大量貢獻者、開發者和社區的一種肯定。

Seata 已經加入孵化器項目了,項目主頁如下:

https://incubator.apache.org/projects/seata.html

棧長梳理了下 Seata 的重要發展歷程:

2007 年:

阿裡巴巴和螞蟻集團內部開始開發分散式事務中間件,以解決電商、支付、物流等業務場景中應用數據的一致性問題,經過多年的發展和完善,這個項目被命名為:Seata。

Seata 的架構起源於阿裡集團的五彩石項目,該項目是在集團內去 IOE,從單體架構過渡到分散式架構的過程中誕生的。

2019 年 1 月:

Seata 正式宣佈開源,發佈第一個版本:v0.1.0,目的是以社區共建的形式幫助用戶快速落地分散式事務解決方案。

2019 年 12 月:

Seata 正式發佈第一個 GA 版本:v1.0.0-GA,意味著項目已經基本生產可用了。

2023 年 10 月:

為了 Seata 更好的未來,讓全球開發者參與開源進來,阿裡巴巴正式將 Seata 捐贈給 Apache 基金會,並且該提案通過了 Apache 基金會的全票通過,暫時成為 Apache 的孵化器項目,成為正式項目也是時間問題而已。

目前,Seata 最新版本為兩周前剛發佈的 v1.8.0。


Seata 的成功並非偶然,而是其在解決微服務架構下應用數據一致性問題的能力的證明,Seata 能在微服務架構下構建高性能和簡單易用的分散式事務服務,並且支持主流的 AT、TCC、SAGA 和 XA 事務模式,為用戶打造一站式的分散式解決方案。

Seata 並不是第一個加入 Apache 的國產項目,這樣的前輩也有不少,比如:Dubbo、RocketMQ、SkyWalking、ShardingSphere 等等,Seata 的加入會進一步推動更多的中國開源項目參與到國際開源社區中去,共同推動全球技術的進步。

我能第一時間想到的,阿裡之前貢獻了 Dubbo、RocketMQ,現在再捐獻 Seata,阿裡捐獻給 Apache 的 Java 生態開源項目已經至少有 3 個了,說實在的,阿裡對開源的貢獻還是挺大的,接下來就看 Nacos、Sentinel 了。

Apache Seata,未來可期!


Spring Cloud Alibaba 又是什麼鬼?

Spring Cloud Alibaba 是國內的主流微服務框架,它涵蓋了阿裡巴巴這些年開源的重要中間件,它通過 Spring Cloud 結合阿裡中間件迅速搭建分散式、微服務架構的系統。

最重要的是,Spring Cloud Alibaba 也早就得到了 Spring Cloud 官方認證:

能被 Spring Cloud 官方認證,可以看出 Spring Cloud Alibaba 的重要性。

Spring Cloud Alibaba 技術棧:

組件 Spring Cloud Spring Cloud Netflix Spring Cloud Alibaba
註冊中心 Service Registry
Service Discovery
Eureka 1.x
Eureka 2.x(停止維護)
Nacos
配置中心 Spring Cloud Config
Git/ JDBC/ Vault...
Archaius(停止維護) Nacos
服務容錯 Spring Cloud Circuit Breaker Hystrix(停止維護) Sentinel
服務調用 Spring Cloud OpenFeign
RestTemplate
Feign
負載均衡 Spring Cloud LoadBalancer Ribbon(停止維護)
服務網關 Spring Cloud Gateway Zuul(停止維護)
消息隊列 Spring Cloud Stream
RabbitMQ/ Kafka
RocketMQ
鏈路追蹤 Spring Cloud Sleuth
分散式事務 Seata

鑒於 Spring Cloud Netflix 各種組件的停止維護,學習 Spring Cloud Alibaba 是目前最正確的姿勢:

  • Spring Cloud Alibaba 基於 Spring Cloud 構建,只是提供了對 Alibaba 組件的封裝而已,比如:Nacos、Sentinel 等,其最頂層的抽象還是 Spring Cloud,所以學習 Spring Cloud Alibaba 就是學習 Spring Cloud。
  • Spring Cloud Alibaba 作為 Spring Cloud 的官方頂級項目,也是國內最強微服務框架及事實上的標準,沒有之一。

如果你問 Spring Cloud 技術怎麼選,選官方認證 Spring Cloud Alibaba 就對了!

最後,如果你要系統學習 Spring Cloud Alibaba,可以報名棧長的《Spring Cloud 微服務課程》,一次訂閱,永久學習,永久提供免費更新。

版權聲明: 本文系公眾號 "Java技術棧" 原創,轉載、引用本文內容請註明出處,抄襲、洗稿一律投訴侵權,後果自負,並保留追究其法律責任的權利。

近期熱文推薦:

1.1,000+ 道 Java面試題及答案整理(2022最新版)

2.勁爆!Java 協程要來了。。。

3.Spring Boot 2.x 教程,太全了!

4.別再寫滿屏的爆爆爆炸類了,試試裝飾器模式,這才是優雅的方式!!

5.《Java開發手冊(嵩山版)》最新發佈,速速下載!

覺得不錯,別忘了隨手點贊+轉發哦!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 由於我司的業務特性,需要 APP 能夠支持即時在無網路的場景下,也能夠正常使用 APP 的功能 那麼,為了讓一個用 web 前端實現的 APP 能夠在無網路的場景下,也能夠正常運行程式,這其中的離線方案就需要實現幾個關鍵點: 代碼的離線、更新 數據的下載、上傳、更新 本篇就想來講一講,我們在離線應用 ...
  • 微服務架構可以更快地推出新產品,幫助產品更輕鬆地擴展,並更好地響應客戶需求。憑藉多種現代數據模型、在任何情況下的容錯性、用於隔離的多租戶功能以及在多個環境中部署的靈活性,Redis Enterprise 使開發人員和運營商能夠針對微服務架構優化他們的數據層。 ...
  • Java解析上傳的zip文件--包含Excel解析與圖片上傳 前言:今天遇到一個需求:上傳一個zip格式的壓縮文件,該zip中包含人員信息的excel以及excel中每行對應的人的圖片,現在需要將該zip壓縮包中所有內容解析導入到資料庫中,包括圖片,並將圖片與excel內容對應。 代碼演示: /** ...
  • 十一、指針和引用(一) 1、指針 1)思考 ​ 在電腦程式中,有一條鐵律那就是萬物皆內粗,而我們知道,記憶體就是一個個小格,存放著高電平或者低電平,也就是0或者1,我們要表達的一切都是通過這種二進位的方式放到記憶體中,當我們讀取、寫入,其實局勢在對應的記憶體空間執行讀或者寫操作 ​ 我們今天就研究研究, ...
  • 反面單例 代碼 import java.util.ArrayList; import java.util.List; /** * @since : 2023/11/17 **/ public class StupidSingleton { private static final StupidSin ...
  • C++ 指針學習筆記 引入 指針是什麼 指針是一個變數,其值為另一個變數的地址。 指針聲明的一般形式為: type *ptr_name; type 是指針的基類型,ptr_name 是指針的名稱,* 用來指定一個變數是指針 對於一個指針,需要明確四個方面的內容:指針的類型、指針所指向的類型、指針的值 ...
  • Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介紹單元測試工具Junit使用以及部分理論知識 🍉歡迎點贊 👍 收藏 ⭐留言評論 📝私信必回喲😁 🍉博主收將持續更新學習記錄獲,友友們有任何問題可以在評論區留言 什麼是Junit單元測試? JUnit 是一個 Java 編程語言的單 ...
  • 聊聊Flink的必知必會(三) 聊聊Flink必知必會(四) 從源碼中,根據關鍵的代碼,梳理一下Flink中的時間與視窗實現邏輯。 WindowedStream 對數據流執行keyBy()操作後,再調用window()方法,就會返回WindowedStream,表示分區後又加窗的數據流。如果數據流沒 ...
一周排行
    -Advertisement-
    Play Games
  • 下麵是一個標準的IDistributedCache用例: public class SomeService(IDistributedCache cache) { public async Task<SomeInformation> GetSomeInformationAsync (string na ...
  • 這個庫提供了在啟動期間實例化已註冊的單例,而不是在首次使用它時實例化。 單例通常在首次使用時創建,這可能會導致響應傳入請求的延遲高於平時。在註冊時創建實例有助於防止第一次Request請求的SLA 以往我們要在註冊的時候實例單例可能會這樣寫: //註冊: services.AddSingleton< ...
  • 最近公司的很多項目都要改單點登錄了,不過大部分都還沒敲定,目前立刻要做的就只有一個比較老的項目 先改一個試試手,主要目標就是最短最快實現功能 首先因為要保留原登錄方式,所以頁面上的改動就是在原來登錄頁面下加一個SSO登錄入口 用超鏈接寫的入口,頁面改造後如下圖: 其中超鏈接的 href="Staff ...
  • Like運算符很好用,特別是它所提供的其中*、?這兩種通配符,在Windows文件系統和各類項目中運用非常廣泛。 但Like運算符僅在VB中支持,在C#中,如何實現呢? 以下是關於LikeString的四種實現方式,其中第四種為Regex正則表達式實現,且在.NET Standard 2.0及以上平... ...
  • 一:背景 1. 講故事 前些天有位朋友找到我,說他們的程式記憶體會偶發性暴漲,自己分析了下是非托管記憶體問題,讓我幫忙看下怎麼回事?哈哈,看到這個dump我還是非常有興趣的,居然還有這種游戲幣自助機類型的程式,下次去大玩家看看他們出幣的機器後端是不是C#寫的?由於dump是linux上的程式,剛好win ...
  • 前言 大家好,我是老馬。很高興遇到你。 我們為 java 開發者實現了 java 版本的 nginx https://github.com/houbb/nginx4j 如果你想知道 servlet 如何處理的,可以參考我的另一個項目: 手寫從零實現簡易版 tomcat minicat 手寫 ngin ...
  • 上一次的介紹,主要圍繞如何統一去捕獲異常,以及為每一種異常添加自己的Mapper實現,並且我們知道,當在ExceptionMapper中返回非200的Response,不支持application/json的響應類型,而是寫死的text/plain類型。 Filter為二方包異常手動捕獲 參考:ht ...
  • 大家好,我是R哥。 今天分享一個爽飛了的面試輔導 case: 這個杭州兄弟空窗期 1 個月+,面試了 6 家公司 0 Offer,不知道問題出在哪,難道是杭州的 IT 崩盤了麽? 報名面試輔導後,經過一個多月的輔導打磨,現在成功入職某上市公司,漲薪 30%+,955 工作制,不咋加班,還不捲。 其他 ...
  • 引入依賴 <!--Freemarker wls--> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.30</version> </dependency> ...
  • 你應如何運行程式 互動式命令模式 開始一個互動式會話 一般是在操作系統命令行下輸入python,且不帶任何參數 系統路徑 如果沒有設置系統的PATH環境變數來包括Python的安裝路徑,可能需要機器上Python可執行文件的完整路徑來代替python 運行的位置:代碼位置 不要輸入的內容:提示符和註 ...