Nacos 2.0 正式發(fā)布,性能提升了 10 倍!!
點(diǎn)擊關(guān)注公眾號(hào),Java干貨及時(shí)送達(dá)

3月20號(hào),Nacos 2.0.0 正式發(fā)布了!
Nacos 簡介:
“一個(gè)更易于構(gòu)建云原生應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。
通俗點(diǎn)講,Nacos 就是一把微服務(wù)雙刃劍:注冊(cè)中心 + 配置中心,由阿里巴巴于 2018 年開源。
Nacos 2.0.0
架構(gòu)模型
新架構(gòu):
Nacos 2.0 架構(gòu)最主要的變化就是增加了對(duì)長連接的支持,gRPC 和 Rsocket 實(shí)現(xiàn)了長連接 RPC 調(diào)用和推送能力。

新服務(wù)模型:

相比 1.x 有不少的變化。
依賴升級(jí)
升級(jí) Nacos Api / Client 模塊以支持 JDK 1.8
新特性
Nacos 2.0 新增了 13 個(gè)新特性:
增加 gRPC 連接核心功能 配置模塊支持 gRPC 命名模塊支持 gRPC 客戶端支持 gRPC gRPC 客戶端支持重新連接 支持通過 gRPC 推送數(shù)據(jù) 支持 gRPC 連接事件通知 支持連接負(fù)載平衡 支持 gRPC 請(qǐng)求認(rèn)證 命名模塊支持 Jraft 元數(shù)據(jù)操作 支持基本連接限制 支持健康檢查 支持升級(jí)和降級(jí)
最主要的特性是新增了對(duì) gRPC 框架的支持,gRPC 是一款開源的基于 HTTP/2 標(biāo)準(zhǔn)設(shè)計(jì)的高性能 RPC 框架,最早由 Google 開源,這也是為啥是 gRPC 名字的原因了。
增強(qiáng)功能
Nacos 2.0 還帶來了 6 個(gè)增強(qiáng)功能:
異步執(zhí)行一些耗時(shí)的操作 SDK 多語言支持 增加一些度量、日志支持 全面支持自定義實(shí)例注冊(cè) 支持單推當(dāng)首次訂閱服務(wù)時(shí) 支持通過閾值健康保護(hù)
重構(gòu)
Nacos 2.0 的 2 個(gè)重構(gòu)項(xiàng):
命名客戶端重構(gòu)網(wǎng)絡(luò)代理 重構(gòu)和適配 v1 openAPI
Bug 修復(fù)
修復(fù)了 14 個(gè) Nacos 1.x 中的 bug
測試
添加 Nacos 2.0 單元測試
性能提升
看下官方對(duì) Nacos 2.0 的測試數(shù)據(jù)總結(jié):
1)Nacos 2.0 注冊(cè)性能相比較 Nacos 1.x 總體提升至少 2 倍;
2)Nacos 2.0 查詢性能相比較 Nacos 1.x 總體提升至少 3 倍,單機(jī)多線程甚至提升了 10 倍;
3)Nacos 2.0 注銷實(shí)例性能比較 Nacos 1.x 總體提升至少 2 倍。
規(guī)劃路線圖

Nacos 2.x 到 3.x 整體規(guī)劃是插件化提升拓展性,提升易用性,到了 3.x 還會(huì)計(jì)劃支持 Service Mesh,這畢竟是未來微服務(wù)的發(fā)展趨勢。
總結(jié)
Nacos 2.x 改動(dòng)還是挺大的,包括底層架構(gòu)、服務(wù)模型,另外,性能也更牛叉,最高性能之處 Nacos 2.0 硬是比 1.x 提升了 10 倍,可想 Nacos 2.x 還是很香的!
另外說下 Spring Cloud Eureka,Eureka 2.0 已經(jīng)停止維護(hù)了:

現(xiàn)在主流用的都是 Eureka 1.x,看了下倉庫,1.x 也幾乎也沒怎么更新了,這個(gè)確實(shí)有點(diǎn)傷,其實(shí)市面上也有其他替代品, Nacos 就是一個(gè)不錯(cuò)的選擇,Nacos 可以同時(shí)搞定注冊(cè)中心、配置中心,開源、高性能,發(fā)展勢頭很猛,并且提供了 Spring Cloud 依賴集成。
注冊(cè)中心:
<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 教程,大家可以關(guān)注公眾號(hào)Java技術(shù)棧,在后臺(tái)回復(fù):spring,可以閱讀棧長整理的一系列 Spring C loud 系列教程。
如果你現(xiàn)在使用的 Nacos 1.x,官方也提供了升級(jí)教程:
“https://nacos.io/zh-cn/docs/2.0.0-upgrading.html
不過目前只支持 Nacos 1.x 到 Nacos 2.0.0-BETA 版本的平滑升級(jí),暫不支持 Nacos 1.x 版本到 Nacos 2.0.0-ALPHA 正式版的平滑升級(jí),后續(xù)會(huì)支持部分版本到該版本的平滑升級(jí),大家可以關(guān)注后續(xù)的升級(jí)文檔。
你們用的啥注冊(cè)中心呢?來,一起來投票看看大家都用的啥~
最后,覺得我的文章對(duì)你用收獲的話,動(dòng)動(dòng)小手,給個(gè)在看、轉(zhuǎn)發(fā),原創(chuàng)不易,棧長需要你的鼓勵(lì)。
關(guān)注公眾號(hào)Java技術(shù)棧,可以獲取后續(xù)更多技術(shù)干貨、最新技術(shù)動(dòng)態(tài)推送。
參考:
版權(quán)申明:本文系公眾號(hào) "Java技術(shù)棧" 原創(chuàng),原創(chuàng)實(shí)屬不易,轉(zhuǎn)載、引用本文內(nèi)容請(qǐng)注明出處,禁止抄襲、洗稿,請(qǐng)自重,尊重他人勞動(dòng)成果和知識(shí)產(chǎn)權(quán)。






關(guān)注Java技術(shù)棧看更多干貨


