Nacos 2.0 正式發布,性能提升 10 倍!!


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 集成文檔:

https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

更多 Spring Cloud 教程,大家可以關注公眾號Java技術棧,在后台回復:spring,可以閱讀棧長整理的一系列 Spring C loud 系列教程。

如果你現在使用的 Nacos 1.x,官方也提供了升級教程:

https://nacos.io/zh-cn/docs/2.0.0-upgrading.html

不過目前只支持 Nacos 1.x 到 Nacos 2.0.0-BETA 版本的平滑升級,暫不支持 Nacos 1.x 版本到 Nacos 2.0.0-ALPHA 正式版的平滑升級,后續會支持部分版本到該版本的平滑升級,大家可以關注后續的升級文檔。

你們用的啥注冊中心呢?來,一起來投票看看大家都用的啥~

最后,覺得我的文章對你用收獲的話,動動小手,給個在看、轉發,原創不易,棧長需要你的鼓勵。

關注公眾號Java技術棧,可以獲取后續更多技術干貨、最新技術動態推送。

參考:

https://nacos.io/zh-cn

https://github.com/alibaba/nacos/releases

https://my.oschina.net/u/3585447/blog/4818143

版權申明:本文系公眾號 "Java技術棧" 原創,原創實屬不易,轉載、引用本文內容請注明出處,禁止抄襲、洗稿,請自重,尊重他人勞動成果和知識產權。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM