什么是Nacos
Nacos是 Dynamic Naming and Configuration Service的首字母簡(jiǎn)稱(chēng),相較之下,它更易于構(gòu)建 云原生 應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。
Nacos 幫助您發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡(jiǎn)單易用的特性集,幫助您快速實(shí)現(xiàn)動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理。
Nacos 幫助您更敏捷和容易地構(gòu)建、交付和管理微服務(wù)平臺(tái)。 Nacos 是構(gòu)建以“服務(wù)”為中心的現(xiàn)代應(yīng)用架構(gòu) (例如微服務(wù)范式、云原生范式) 的服務(wù)基礎(chǔ)設(shè)施。
為什么需要Nacos
在軟件發(fā)展初期,企業(yè)還是傳統(tǒng)的單體應(yīng)用架構(gòu),將所有的功能都打包成一個(gè)應(yīng)用服務(wù)進(jìn)行部署。隨著業(yè)務(wù)體系的不斷發(fā)展擴(kuò)大,單體應(yīng)用架構(gòu)的弊端日益顯現(xiàn)。
如果可以把一個(gè)大的應(yīng)用服務(wù)按照不同的維度和領(lǐng)域拆分成若干個(gè)子服務(wù),各個(gè)業(yè)務(wù)團(tuán)隊(duì)只需要專(zhuān)注于自身負(fù)責(zé)的服務(wù),各自進(jìn)行開(kāi)發(fā)部署迭代,不相互影響,那該多好。因此,傳統(tǒng)的單元應(yīng)用架構(gòu)開(kāi)始朝著微服務(wù)架構(gòu)方向演進(jìn)。演進(jìn)過(guò)程中首要問(wèn)題就是微服務(wù)如何相互發(fā)現(xiàn)對(duì)方進(jìn)行調(diào)用?我們將這種相互發(fā)現(xiàn)、相互調(diào)用的能力稱(chēng)之為微服務(wù)注冊(cè)發(fā)現(xiàn)。Nacos就具備這種微服務(wù)注冊(cè)發(fā)現(xiàn)能力。
作為當(dāng)前主流的服務(wù)注冊(cè)發(fā)現(xiàn)配置中心之一,Nacos已經(jīng)成為了國(guó)內(nèi)開(kāi)發(fā)者的首選,有著廣泛的群眾基礎(chǔ)。
CSE服務(wù)注冊(cè)發(fā)現(xiàn)配置中心引擎service-center目前支持SpringCloud Huawei、ServiceComb微服務(wù)框架,而當(dāng)前國(guó)內(nèi)主流框架是基于Dubbo等,這些框架集成了Nacos作為注冊(cè)發(fā)現(xiàn)配置中心。
為了擁抱開(kāi)源體系的注冊(cè)發(fā)現(xiàn)配置中心,提高CSE的競(jìng)爭(zhēng)力,吸引更多的用戶(hù),CSE新增了支持托管Nacos集群的特性。
Nacos基本架構(gòu)

微服務(wù)通過(guò)Nacos提供的OpenAPI,進(jìn)行微服務(wù)注冊(cè)與發(fā)現(xiàn)、配置管理、命名空間管理、集群管理等操作,詳情請(qǐng)參考:什么是 Nacos
CSE Nacos的關(guān)鍵特性
健康檢查
提供兩種健康檢查機(jī)制:臨時(shí)實(shí)例的健康檢查和永久實(shí)例的健康檢查。臨時(shí)實(shí)例是由客戶(hù)端主動(dòng)發(fā)送心跳服務(wù)端,告訴服務(wù)端“我還活著”,如果客戶(hù)端和服務(wù)端“失聯(lián)”,服務(wù)端主動(dòng)下線客戶(hù)端鎖注冊(cè)的微服務(wù)。永久實(shí)例則是服務(wù)端主動(dòng)探測(cè)客戶(hù)端是否“活著”,如果探測(cè)失敗則下線該微服務(wù)。
服務(wù)管理
支持基于Rest和基于gRPC的服務(wù)發(fā)現(xiàn),具備長(zhǎng)連接能力。
支持對(duì)服務(wù)進(jìn)行管理。根據(jù)服務(wù)名和分組名進(jìn)行服務(wù)檢索、查詢(xún)服務(wù)詳情、創(chuàng)建服務(wù)、刪除服務(wù)。
支持設(shè)置服務(wù)實(shí)例權(quán)重,權(quán)重越大,分配給該實(shí)例的流量越大。
支持設(shè)置服務(wù)的保護(hù)閾值,實(shí)現(xiàn)微服務(wù)調(diào)用的流量控制,保證服務(wù)可用。作為服務(wù)注冊(cè)發(fā)現(xiàn)中心,CSE Nacos正常情況下只會(huì)給服務(wù)消費(fèi)者返回健康的服務(wù)提供者實(shí)例,當(dāng)用戶(hù)應(yīng)用訪問(wèn)量激增,所有的調(diào)用都只會(huì)轉(zhuǎn)發(fā)到健康實(shí)例,可能導(dǎo)致服務(wù)的崩潰,產(chǎn)生雪崩效應(yīng)。通過(guò)設(shè)置保護(hù)閾值,CSE Nacos會(huì)在健康實(shí)例數(shù)/總實(shí)例數(shù)<=保護(hù)閾值時(shí),觸發(fā)保護(hù)機(jī)制,將部分請(qǐng)求轉(zhuǎn)發(fā)至不健康服務(wù)提供者實(shí)例,達(dá)到限流的作用,雖然損失了部分流量,但是保證了服務(wù)的可用性。

保護(hù)閾值的范圍是0-1的浮點(diǎn)數(shù),0表示無(wú)論如何不觸發(fā)閾值保護(hù),1表示無(wú)論如何都會(huì)觸發(fā)閾值保護(hù)。
配置管理
支持配置文件的創(chuàng)建、刪除、導(dǎo)入導(dǎo)出,支持多種配置文件格式。當(dāng)用戶(hù)微服務(wù)應(yīng)用系統(tǒng)復(fù)雜龐大時(shí),可能具有大量的配置文件,甚至配置文件的格式多樣,使用導(dǎo)入導(dǎo)出功能可以幫助用戶(hù)便捷的設(shè)置配置項(xiàng),快速搬遷應(yīng)用至CSE。
支持配置的監(jiān)聽(tīng)查詢(xún),客戶(hù)端可以主動(dòng)發(fā)現(xiàn)配置文件的變更,重新讀取配置文件內(nèi)容,秒級(jí)生效,實(shí)現(xiàn)配置的熱更新,無(wú)需重新部署應(yīng)用和服務(wù),讓配置管理變得更加高效和敏捷。
支持配置的版本管理,可以回退至歷史版本。
訂閱者查詢(xún)
支持查詢(xún)服務(wù)的訂閱者,幫助用戶(hù)更好地維護(hù)管理服務(wù)的訂閱關(guān)系。
命名空間管理
支持命名空間的增刪改查,用于進(jìn)行租戶(hù)粒度的配置隔離。不同的命名空間下,可以存在相同的 Group 或 Data ID 的配置。命名空間的常用場(chǎng)景之一是不同環(huán)境的配置的區(qū)分隔離,例如開(kāi)發(fā)測(cè)試環(huán)境和生產(chǎn)環(huán)境的資源(如配置、服務(wù))隔離等。
CSE Nacos的規(guī)格
當(dāng)前只支持集群版Nacos(三節(jié)點(diǎn)),支持的規(guī)格如下:

更多規(guī)格盡請(qǐng)期待。華為云CSE Nacos正在公測(cè)中:公測(cè)詳情
- Java Chassis應(yīng)用接入ServiceComb引擎_如何接入ServiceComb引擎_Java Chassis應(yīng)用接入ServiceComb引擎操作指導(dǎo)1
- 應(yīng)用部署_應(yīng)用部署支持什么語(yǔ)言_應(yīng)用部署的優(yōu)勢(shì)-華為云
- 制品倉(cāng)庫(kù)是什么_制品倉(cāng)庫(kù)有什么能力_軟件發(fā)布-華為云
- 微服務(wù)部署_微服務(wù)平臺(tái)_微服務(wù)引擎CSE-華為云
- 自動(dòng)化部署_支持多種部署形態(tài)_部署服務(wù)CodeArts Deploy-華為云
最新文章
- Nacos注冊(cè)配置中心_Nacos的關(guān)鍵特性_微服務(wù)引擎CSE-華為云
- 微服務(wù)注冊(cè)配置中心Nacos特點(diǎn)_配置管理_Nacos支持多種注冊(cè)方式-華為云
- Nacos引擎_微服務(wù)注冊(cè)配置中心_微服務(wù)引擎CSE-華為云
- 微服務(wù)注冊(cè)配置中心Nacos_服務(wù)發(fā)現(xiàn)_動(dòng)態(tài)配置-華為云
- Spring Cloud應(yīng)用托管_微服務(wù)平臺(tái)_微服務(wù)引擎CSE-華為云
- 微服務(wù)平臺(tái)有哪些功能_微服務(wù)架構(gòu)_微服務(wù)引擎CSE-華為云