3月20號,Nacos 2.0.0 正式發布了!
Nacos 簡介:
一個更易於構建雲原生應用的動態服務發現、配置管理和服務管理平台。
通俗點講,Nacos 就是一把微服務雙刃劍:注冊中心 + 配置中心,由阿里巴巴於 2018 年開源。
Nacos 2.0.0
架構模型
新架構:
Nacos 2.0 架構最主要的變化就是增加了對長連接的支持,gRPC 和 Rsocket 實現了長連接 RPC 調用和推送能力。
新服務模型:
相比 1.x 有不少的變化。
依賴升級
- 升級 Nacos Api / Client 模塊以支持 JDK 1.8
新特性
Nacos 2.0 新增了 13 個新特性:
- 增加 gRPC 連接核心功能
- 配置模塊支持 gRPC
- 命名模塊支持 gRPC
- 客戶端支持 gRPC
- gRPC 客戶端支持重新連接
- 支持通過 gRPC 推送數據
- 支持 gRPC 連接事件通知
- 支持連接負載平衡
- 支持 gRPC 請求認證
- 命名模塊支持 Jraft 元數據操作
- 支持基本連接限制
- 支持健康檢查
- 支持升級和降級
最主要的特性是新增了對 gRPC 框架的支持,gRPC 是一款開源的基於 HTTP/2 標准設計的高性能 RPC 框架,最早由 Google 開源,這也是為啥是 gRPC 名字的原因了。
增強功能
Nacos 2.0 還帶來了 6 個增強功能:
- 異步執行一些耗時的操作
- SDK 多語言支持
- 增加一些度量、日志支持
- 全面支持自定義實例注冊
- 支持單推當首次訂閱服務時
- 支持通過閾值健康保護
重構
Nacos 2.0 的 2 個重構項:
- 命名客戶端重構網絡代理
- 重構和適配 v1 openAPI
Bug 修復
- 修復了 14 個 Nacos 1.x 中的 bug
測試
- 添加 Nacos 2.0 單元測試
性能提升
看下官方對 Nacos 2.0 的測試數據總結:
1)Nacos 2.0 注冊性能相比較 Nacos 1.x 總體提升至少 2 倍;
2)Nacos 2.0 查詢性能相比較 Nacos 1.x 總體提升至少 3 倍,單機多線程甚至提升了 10 倍;
3)Nacos 2.0 注銷實例性能比較 Nacos 1.x 總體提升至少 2 倍。
規划路線圖
Nacos 2.x 到 3.x 整體規划是插件化提升拓展性,提升易用性,到了 3.x 還會計划支持 Service Mesh,這畢竟是未來微服務的發展趨勢。
總結
Nacos 2.x 改動還是挺大的,包括底層架構、服務模型,另外,性能也更牛叉,最高性能之處 Nacos 2.0 硬是比 1.x 提升了 10 倍,可想 Nacos 2.x 還是很香的!
另外說下 Spring Cloud Eureka,Eureka 2.0 已經停止維護了:
現在主流用的都是 Eureka 1.x,看了下倉庫,1.x 也幾乎也沒怎么更新了,這個確實有點傷,其實市面上也有其他替代品, Nacos 就是一個不錯的選擇,Nacos 可以同時搞定注冊中心、配置中心,開源、高性能,發展勢頭很猛,並且提供了 Spring Cloud 依賴集成。
注冊中心:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${latest.version}</version>
</dependency>
配置中心:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${latest.version}</version>
</dependency>
更多參考 Spring Cloud 集成文檔:
更多 Spring Cloud 教程,大家可以關注公眾號Java技術棧,在后台回復:spring,可以閱讀棧長整理的一系列 Spring C loud 系列教程。
如果你現在使用的 Nacos 1.x,官方也提供了升級教程:
不過目前只支持 Nacos 1.x 到 Nacos 2.0.0-BETA 版本的平滑升級,暫不支持 Nacos 1.x 版本到 Nacos 2.0.0-ALPHA 正式版的平滑升級,后續會支持部分版本到該版本的平滑升級,大家可以關注后續的升級文檔。
你們用的啥注冊中心呢?來,一起來投票看看大家都用的啥~
最后,覺得我的文章對你用收獲的話,動動小手,給個在看、轉發,原創不易,棧長需要你的鼓勵。
關注公眾號Java技術棧,可以獲取后續更多技術干貨、最新技術動態推送。
參考:
https://github.com/alibaba/nacos/releases
https://my.oschina.net/u/3585447/blog/4818143
版權申明:本文系公眾號 "Java技術棧" 原創,原創實屬不易,轉載、引用本文內容請注明出處,禁止抄襲、洗稿,請自重,尊重他人勞動成果和知識產權。