大連企業(yè)網(wǎng)站排名優(yōu)化百度關(guān)鍵詞推廣可以自己做嗎
引言
??Nacos是阿里巴巴中間件部門開(kāi)源的一款用于服務(wù)發(fā)現(xiàn)和配置管理的產(chǎn)品,Nacos 控制臺(tái)主要旨在于增強(qiáng)對(duì)于服務(wù)列表、健康狀態(tài)管理、服務(wù)治理、分布式配置管理等方面的管控能力,以便進(jìn)一步幫助用戶降低管理微服務(wù)應(yīng)用架構(gòu)的成本。
一、訪問(wèn) Nacos 控制臺(tái)
1.1 登錄管理
??Nacos Server 運(yùn)行成功后我們可以打開(kāi)后臺(tái)管理界面,查看其運(yùn)行狀態(tài)和管理信息。在瀏覽器訪問(wèn) http://ip:8848/nacos
,默認(rèn)會(huì)跳轉(zhuǎn)到以下登錄頁(yè)面,默認(rèn)的賬號(hào)和密碼都為:nacos。
??登錄后可以看到如下界面,默認(rèn)進(jìn)入nacos管理中心,此時(shí)還沒(méi)有服務(wù)注冊(cè)進(jìn)來(lái),所以服務(wù)列表是空的。右上角的內(nèi)容就是一些超鏈接,能夠跳轉(zhuǎn)到 Nacos 的官網(wǎng)等地方
??由于部分公司自己開(kāi)發(fā)控制臺(tái),不希望被nacos的安全filter攔截。因此nacos支持定制關(guān)閉登錄功能找到配置文件 application.properties
, 替換以下內(nèi)容即可。
## spring security config
### turn off security
spring.security.enabled=false
management.security=false
security.basic.enabled=false
nacos.security.ignore.urls=/**# nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**
注意:默認(rèn)會(huì)話保持時(shí)間為30分鐘,30分鐘后需要重新登錄認(rèn)證,暫時(shí)不支持修改該默認(rèn)時(shí)間。
1.2 功能菜單
??登錄成功后可以看到左側(cè)的菜單欄,主要功能有:配置管理、服務(wù)管理、權(quán)限管理、命名空間、集群管理,如下表所示:
一級(jí)菜單 | 二級(jí)菜單 | 說(shuō)明 |
---|---|---|
配置管理 | 主要是管理配置中心的所有配置文件 | |
配置列表 | 查詢、添加、修改配置數(shù)據(jù) | |
歷史版本 | ||
監(jiān)聽(tīng)查詢 | ||
服務(wù)管理 | ||
服務(wù)列表 | 用于展示已經(jīng)注冊(cè)到 Nacos Server的服務(wù)列表以及服務(wù)的基本信息 | |
訂閱者列表 | 服務(wù)消費(fèi)方以及包括客戶端的版本信息等 | |
權(quán)限控制 | 用于維護(hù)管理后臺(tái)系統(tǒng)的用戶角色和權(quán)限,一般的系統(tǒng)都有這個(gè)功能 | |
用戶列表 | 用于查詢、修改、刪除、添加用戶 | |
角色管理 | 用于查詢、修改、刪除、添加角色 | |
權(quán)限管理 | ||
命名空間 | 用于將服務(wù)的注冊(cè)訂閱信息在邏輯上隔離開(kāi)來(lái) | |
集群管理 | ||
節(jié)點(diǎn)列表 | 用于查看集群節(jié)點(diǎn)、查看節(jié)點(diǎn)元數(shù)據(jù)、下線節(jié)點(diǎn) |
二、配置管理
??應(yīng)用程序在啟動(dòng)和運(yùn)行的時(shí)候往往需要讀取一些配置信息,配置基本上伴隨著應(yīng)用程序的整個(gè)生命周期,比如:數(shù)據(jù)庫(kù)連接參數(shù)、啟動(dòng)參數(shù)等。如果服務(wù)中配置都放在代碼中或者項(xiàng)目里的配置文件中,那么我們想要修改配置,就不得不修改代碼,提交上線、重啟服務(wù)。但若是我們使用統(tǒng)一配置管理,就可以在服務(wù)啟動(dòng)的時(shí)候從配置管理服務(wù)讀取配置,啟動(dòng)后,修改配置后,也會(huì)主動(dòng)通知我們的服務(wù)。Nacos 提供了動(dòng)態(tài)配置服務(wù),支持基于 Namespace 和 Group 的配置分組管理,以便更靈活的根據(jù)自己的需要,實(shí)時(shí)進(jìn)行服務(wù)應(yīng)用的配置變更,讓配置管理變得更加高效和快捷。
??它基于 key/value 方式存儲(chǔ)應(yīng)用配置和其他元數(shù)據(jù)信息,為分布式系統(tǒng)中的外部化配置提供服務(wù)器端和客戶端支持,以便用戶更靈活的根據(jù)自己的需要按照環(huán)境或者應(yīng)用、模塊等分組管理微服務(wù)以及Spring的大量配置。在配置管理中主要提供了配置歷史版本、回滾、訂閱者查詢等核心管理能力。
2.1 配置列表
??點(diǎn)擊Nacos控制臺(tái)的【配置管理 -> 配置列表】,即可看到以下圖所示。界面中展示了不同 namespace 下的配置集列表,可以點(diǎn)擊左上角的不同 namespace 進(jìn)行切換,右上角“+"號(hào)或點(diǎn)擊某配置集后的編輯按鈕可進(jìn)入配置集編輯器。
??在 nacos 服務(wù)端默認(rèn)是沒(méi)有任何配置的,我們可以在配置列表頁(yè)面新增一個(gè)配。在命名空間public中點(diǎn)擊右邊+號(hào)來(lái)新建配置或點(diǎn)擊某配置集后的編輯按鈕,如下圖所示。
??Nacos支持 YAML、Properties、TEXT、JSON、XML、HTML 等常見(jiàn)配置格式在線編輯、語(yǔ)法高亮、格式校驗(yàn),幫助用戶高效編輯的同時(shí)大幅降低格式錯(cuò)誤帶來(lái)的風(fēng)險(xiǎn)。Nacos支持配置標(biāo)簽的能力,幫助用戶更好、更靈活的做到基于標(biāo)簽的配置分類及管理。同時(shí)支持用戶對(duì)配置及其變更進(jìn)行描述,方面多人或者跨團(tuán)隊(duì)協(xié)作管理配置。
??當(dāng)我們?cè)谛薷呐渲梦募臅r(shí)候,最容易出現(xiàn)的就是誤修改某些內(nèi)容,好在Nacos支持編輯DIFF能力,幫助用戶校驗(yàn)修改內(nèi)容,降低改錯(cuò)帶來(lái)的風(fēng)險(xiǎn)。
??Nacos 提供示例代碼能力,能夠讓新手快速使用客戶端編程消費(fèi)該配置,大幅降低新手使用門檻。
注意: 在 Mac 上進(jìn)行同樣的操作,會(huì)發(fā)現(xiàn)提示: "導(dǎo)入失敗! 未讀取到合法數(shù)據(jù),請(qǐng)檢查導(dǎo)入的數(shù)據(jù)文件。"這個(gè)是由于mac系統(tǒng)自帶的
.DS_store
文件,Nacos 讀取的時(shí)候會(huì)出現(xiàn)異常,所以需要清除.DS_store
文件。
2.2 歷史版本
??Nacos 通過(guò)提供配置版本管理及其一鍵回滾能力,幫助用戶改錯(cuò)配置的時(shí)候能夠快速恢復(fù),降低微服務(wù)系統(tǒng)在配置管理上的一定會(huì)遇到的可用性風(fēng)險(xiǎn)。Nacos中,修改配置點(diǎn)擊發(fā)布后會(huì)創(chuàng)建一個(gè)對(duì)應(yīng)的歷史版本快照,我們可以在Nacos控制臺(tái)的歷史版本列表中找到這些快照,點(diǎn)擊回滾按鈕即可將配置恢復(fù)到指定的版本。
2.3 監(jiān)聽(tīng)查詢
??Nacos 提供配置訂閱者即監(jiān)聽(tīng)者查詢能力,可以查看配置是否推動(dòng)更新成功。同時(shí)提供客戶端當(dāng)前配置的MD5校驗(yàn)值,以便幫助用戶更好的檢查配置變更是否推送到 Client 端,如下圖所示:
三、服務(wù)管理
??開(kāi)發(fā)者或者運(yùn)維人員往往需要在服務(wù)注冊(cè)后,通過(guò)友好的界面來(lái)查看服務(wù)的注冊(cè)情況,包括當(dāng)前系統(tǒng)注冊(cè)的所有服務(wù)和每個(gè)服務(wù)的詳情。并在有權(quán)限控制的情況下,進(jìn)行服務(wù)的一些配置的編輯操作。Nacos 控制臺(tái)的服務(wù)發(fā)現(xiàn)部分,主要就是提供用戶一個(gè)基本的運(yùn)維頁(yè)面,能夠查看、編輯當(dāng)前注冊(cè)的服務(wù)。
3.1 服務(wù)列表
3.1.1 服務(wù)列表頁(yè)面
??服務(wù)列表頁(yè)面主要展示已經(jīng)在Nacos注冊(cè)的服務(wù)列表以及服務(wù)的基本信息等,整體界面布局是左上角有一個(gè)支持根據(jù)服務(wù)名搜索服務(wù)的搜索框和搜索按鈕,頁(yè)面中央是服務(wù)列表的展示。服務(wù)列表主要展示服務(wù)名、集群數(shù)目、實(shí)例數(shù)目、健康實(shí)例數(shù)目和詳情按鈕五部分,如下圖所示。我們可以按照服務(wù)名稱進(jìn)行搜索,后面的隱藏空服務(wù)意思是我們可以創(chuàng)建一個(gè)空服務(wù),這個(gè)空服務(wù)暫時(shí)沒(méi)有任意一個(gè)實(shí)例,它就只是創(chuàng)建了,占了一個(gè)位置等待Nacos Client來(lái)進(jìn)行注冊(cè)。
3.1.2 創(chuàng)建服務(wù)頁(yè)面
??我們可以點(diǎn)擊創(chuàng)建服務(wù)的按鈕來(lái)進(jìn)行創(chuàng)建空服務(wù),然后輸入服務(wù)名和保護(hù)閥值,如下圖所示,點(diǎn)擊確定后的服務(wù)列表就會(huì)顯示出剛剛創(chuàng)建的服務(wù)。
??其中,服務(wù)名?般用于描述該服務(wù)提供了某種功能或能力,服務(wù)名作為服務(wù)唯?標(biāo)示,需要確保在使用中能夠唯?定位到該服務(wù),在項(xiàng)目中可以通過(guò) spring.application.name
來(lái)指定,如下所示:
spring.application.name=spring-cloud-nacos-producer
??服務(wù)實(shí)例分為健康的實(shí)例和不健康的實(shí)例,默認(rèn)在5秒之后Nacos注冊(cè)中心還沒(méi)有收到某個(gè)實(shí)例的心跳就認(rèn)為這是一個(gè)不健康的實(shí)例,當(dāng)30秒還沒(méi)有收到心跳就把這個(gè)服務(wù)實(shí)例剔除掉。再上圖中提到保護(hù)閾值,我們可以設(shè)置一個(gè)0~1之間的數(shù),來(lái)進(jìn)行雪崩保護(hù)。如果不設(shè)置,默認(rèn)是0,也就是不開(kāi)啟雪崩保護(hù),當(dāng) 健康的實(shí)例數(shù) / 總實(shí)例數(shù) < 保護(hù)閥值
就會(huì)觸發(fā)雪崩保護(hù)。我們一般也不會(huì)設(shè)置保護(hù)閥值,因?yàn)楹竺嬉话銜?huì)結(jié)合sentinel服務(wù)熔斷降級(jí)來(lái)完成雪崩保護(hù),Nacos 主要還是做注冊(cè)中心的工作。
??上圖中提到分組,這是 Nacos 中次于命名空間的?種隔離概念,區(qū)別于命名空間的強(qiáng)制隔離屬性,分組屬于?個(gè)弱隔離概念,主要用于邏輯區(qū)分?些服務(wù)使用場(chǎng)景或不同應(yīng)用的同名服務(wù),最常用的情況主要是同?個(gè)服務(wù)的測(cè)試分組和生產(chǎn)分組,或者將應(yīng)用名作為分組以防止不同應(yīng)用提供的服務(wù)重名。分組名默認(rèn)為 DEFAULT_GROUP
,在項(xiàng)目中可通過(guò) spring.cloud.nacos.discovery.group
來(lái)設(shè)置,如下所示:
# 指定 nacos 中的分組名
spring.cloud.nacos.discovery.group=DEV_GROUP
此項(xiàng)可省略,省略時(shí)的默認(rèn)值為 DEFAULT_GROUP。 分組名可以直接在項(xiàng)目中使用,無(wú)需像命名空間那樣,在使用前還要在控制臺(tái)中新建,設(shè)定了分組名之后,刷新服務(wù)列表就可以看到新的分組名稱了。
3.1.3 服務(wù)詳情頁(yè)面
??在服務(wù)列表頁(yè)面點(diǎn)擊“詳情”按鈕,就會(huì)進(jìn)入服務(wù)詳情頁(yè)面。服務(wù)詳情頁(yè)面展示的是一個(gè)服務(wù)的所有關(guān)鍵信息,包括服務(wù)的配置和元數(shù)據(jù)、集群列表和示例列表,以及一些操作的按鈕,如下圖所示:
??在該頁(yè)面的上方,是服務(wù)的配置和元信息,目前包含服務(wù)名、保護(hù)閾值、健康檢查模式以及元數(shù)據(jù)metadata。右上方是編輯服務(wù)按鈕,點(diǎn)擊后會(huì)有對(duì)話框彈出,可以對(duì)服務(wù)的配置進(jìn)行編輯。例如服務(wù)的元數(shù)據(jù)編輯,首先點(diǎn)擊服務(wù)詳情頁(yè)右上角的“編輯服務(wù)”按鈕,然后在元數(shù)據(jù)輸入框輸入:version=1.0,env=prod。
??服務(wù)詳情的下方,是集群列表和集群下的實(shí)例列表。實(shí)例列表將會(huì)分頁(yè)展示該集群下注冊(cè)的所有實(shí)例,展示的信息有IP、端口、權(quán)重、是否健康、元信息和對(duì)應(yīng)的編輯及下線按鈕。Nacos 為用戶提供了流量權(quán)重控制的能力,同時(shí)開(kāi)放了服務(wù)流量的閾值保護(hù),以幫助用戶更好的保護(hù)服務(wù)服務(wù)提供者集群不被意外打垮。如下圖所以,可以點(diǎn)擊實(shí)例的編輯按鈕,修改實(shí)例的權(quán)重。如果想增加實(shí)例的流量,可以將權(quán)重調(diào)大,如果不想實(shí)例接收流量,則可以將權(quán)重設(shè)為0。
??Nacos還提供服務(wù)實(shí)例的上下線操作,在服務(wù)詳情頁(yè)面,可以點(diǎn)擊實(shí)例的“上線”或者“下線”按鈕。下線按鈕點(diǎn)擊后,該實(shí)例將不會(huì)返回給訂閱端,無(wú)論該實(shí)例是否健康?!跋戮€”文本會(huì)改成“上線”,用于對(duì)應(yīng)的實(shí)例上線操作。
3.2 訂閱者列表
??這里能夠查詢的服務(wù)提供者的訪問(wèn)記錄,很簡(jiǎn)單,沒(méi)有什么需要說(shuō)的,略過(guò)。
四、權(quán)限控制
4.1 用戶列表
??Nacos 開(kāi)啟權(quán)限控制后,多了權(quán)限控制模塊,可以給不同的用戶分配不同的角色,給不同的角色分配不同資源的不同的權(quán)限。點(diǎn)擊“用戶列表”,進(jìn)入用戶管理頁(yè)面,可以進(jìn)行用戶的創(chuàng)建、修改和刪除。
4.2 角色管理
??因?yàn)?Nacos 的自帶的權(quán)限是基于角色來(lái)進(jìn)行分配的,因此需要給創(chuàng)建好的用戶綁定一些角色。
4.3 權(quán)限管理
??角色創(chuàng)建好以后,就可以給這個(gè)角色賦予特定的權(quán)限了。在“添加權(quán)限”對(duì)話框里,可以選擇綁定的角色、命名空間資源以及對(duì)應(yīng)的動(dòng)作類型。例如,可以給角色 test 綁定命名空間test的讀寫權(quán)限。然后又因?yàn)閯倓偽覀兪菍⒂脩?test 綁定到了角色 test 上,那么 test 這個(gè)用戶就可以對(duì) test 這個(gè)命名空間的資源進(jìn)行讀寫操作了。
??點(diǎn)擊控制臺(tái)右上角,退出 admin 賬號(hào),然后用剛才創(chuàng)建的 test 進(jìn)行登錄。首先是左側(cè)的權(quán)限管理菜單消失了,因?yàn)楫?dāng)前用戶不是管理員。其次是會(huì)彈出一個(gè)鑒權(quán)失敗的提示框。不用擔(dān)心,這個(gè)提示框意思是 test 沒(méi)有 public 命名空間的讀權(quán)限,所以會(huì)彈出,但是不影響我們將命名空間切換到 test。
五、命名空間
5.1 隔離設(shè)計(jì)
??Nacos 服務(wù)中最頂層、也是包含范圍最廣的概念,命名空間的作用其實(shí)就是可以進(jìn)行多租戶的分割,Nacos 基于Namespace 幫助用戶邏輯隔離多個(gè)命名空間,這可以幫助用戶更好的管理測(cè)試、預(yù)發(fā)、生產(chǎn)等多環(huán)境服務(wù)和配置,讓每個(gè)環(huán)境的同一個(gè)配置(如數(shù)據(jù)庫(kù)數(shù)據(jù)源)可以定義不同的值。其中,Namespace 代表不同的環(huán)境,如開(kāi)發(fā),測(cè)試,生產(chǎn)等;Group 代表項(xiàng)目,如 xxx 安全項(xiàng)目、xxx 電商項(xiàng)目等;每個(gè)項(xiàng)目往往有若干個(gè)工程(微服務(wù)),每個(gè)配置集(DataId)是一個(gè)工程(微服務(wù))的主配置文件,如下圖所示:
??從一個(gè)租戶(用戶)的角度來(lái)看,如果有多套不同的環(huán)境,那么這個(gè)時(shí)候可以根據(jù)指定的環(huán)境來(lái)創(chuàng)建不同的namespce,以此來(lái)實(shí)現(xiàn)多環(huán)境的隔離。例如,你可能有開(kāi)發(fā),測(cè)試和生產(chǎn)三個(gè)不同的環(huán)境,那么使用一套nacos 集群可以分別建以下三個(gè)不同的 namespace。如下圖所示:
??從多個(gè)租戶(用戶)的角度來(lái)看,每個(gè)租戶(用戶)可能會(huì)有自己的 namespace,每個(gè)租戶(用戶)的配置數(shù)據(jù)以及注冊(cè)的服務(wù)數(shù)據(jù)都會(huì)歸屬到自己的 namespace 下,以此來(lái)實(shí)現(xiàn)多租戶間的數(shù)據(jù)隔離。例如超級(jí)管理員分配了三個(gè)租戶,分別為張三、李四和王五。分配好了之后,各租戶用自己的賬戶名和密碼登錄后,創(chuàng)建自己的命名空間。如下圖所示:
5.2 命名空間管理
??在管理界面創(chuàng)建命名空間的方法如下,點(diǎn)擊【命名空間–>新建命名空間】,然后輸入名稱和描述,如下圖所示,點(diǎn)擊保存之后在列表這里就可以看到剛剛創(chuàng)建的命名空間了,同時(shí)在服務(wù)列表中也能看到命名空間的身影。
??命名空間默認(rèn)為 public,在項(xiàng)目開(kāi)發(fā)中,如果不指定命名空間,那么會(huì)使用默認(rèn)值 public。官方推薦使用運(yùn)行環(huán)境來(lái)定義命名空間,例如: 開(kāi)發(fā)環(huán)境(dev)、測(cè)試環(huán)境(test)、驗(yàn)收測(cè)試環(huán)境(uat)、生成環(huán)境(prod)等,用于將服務(wù)的注冊(cè)訂閱信息在邏輯上隔離開(kāi)來(lái)。
??在項(xiàng)目開(kāi)發(fā)中,在Nacos Client 配置的時(shí)候其實(shí)就通過(guò) spring.cloud.nacos.discovery.namespace
來(lái)指定命令空間了,如下所示:
spring:application:name: order-service # 指定應(yīng)用名稱,Nacos會(huì)將該名稱當(dāng)做服務(wù)名稱cloud:nacos:server-addr: 127.0.0.1:8848 # 指定Nacos服務(wù)的地址,默認(rèn)值是localhost:8848discovery:# 指定Nacos 管理界面登錄用戶名和密碼,默認(rèn)值是nacosusername: nacospassword: nacosnamespace: public # 指定命名空間,可以隔離不同的服務(wù)實(shí)例。這里填的是命名空間的id,默認(rèn)是public
注意:如果在控制臺(tái)沒(méi)有新建命名空間,直接在項(xiàng)目中使用的話,是不能將服務(wù)成功的注冊(cè)到 Nacos 中的。
六、集群管理
6.1 Nacos 服務(wù)存儲(chǔ)模型
??Nacos Server可以是集群部署的也可以是單機(jī)部署,在實(shí)際生產(chǎn)環(huán)境中,為了防止單點(diǎn)故障我們肯定不可能部署一個(gè)節(jié)點(diǎn)。Nacos服務(wù)分級(jí)存儲(chǔ)模型:一級(jí)是服務(wù);二級(jí)是集群,比如可以按區(qū)域機(jī)房劃分集群,北京集群、上海集群、廣州集群等等;三級(jí)是實(shí)例,例如北京機(jī)房的某臺(tái)服務(wù)器部署的某服務(wù)。
6.2 Nacos 服務(wù)配置集群
??在 Nacos 注冊(cè)的服務(wù),如果沒(méi)有配置集群的話,默認(rèn)是沒(méi)有集群的,也就是在一個(gè)名為 DEFAULT 的集群下,如下:
??我們可以在 Nacos 服務(wù)的配置文件中通過(guò)配置指定該服務(wù)的集群,只需在配置文件比如 application.yml 中添加 spring.cloud.nacos.discovery.cluster-name 屬性即可,如下:
spring:application:name: orderservicecloud:nacos:server-addr: http://localhost:8848 # nacos服務(wù)地址discovery:cluster-name: HZ # 配置集群名稱,例如:HZ,代指杭州集群
此時(shí),注冊(cè)在 Nacos 中的服務(wù)可以看到它的集群名稱就是我們配置的集群名稱,如下:
??在服務(wù)互相調(diào)用時(shí)我們應(yīng)該盡可能地去選擇本地集群,即同一集群的服務(wù),因?yàn)榭缂赫{(diào)用延遲較高,只有當(dāng)本地集群的需調(diào)用的服務(wù)不可訪問(wèn)時(shí),再去訪問(wèn)其它集群。如下所示:
??但是使用 Spring Cloud 在 Nacos 中注冊(cè)的服務(wù),默認(rèn)的負(fù)載均衡策略是輪詢,也就是會(huì)輪詢各個(gè)服務(wù),不會(huì)區(qū)別是否同一集群。我們可以通過(guò)配置負(fù)載均衡策略來(lái)使得調(diào)用服務(wù)時(shí)優(yōu)先選擇同一集群的服務(wù)。假設(shè) order-service 和 user-service 兩種服務(wù)在各個(gè)集群中都有實(shí)例存在,而我們想要配置在 order-service 中調(diào)用 user-service 服務(wù)的接口時(shí),優(yōu)先選擇同一集群的服務(wù),只需在 order-service 服務(wù)中設(shè)置負(fù)載均衡的 IRule 為 NacosRule ,如下
userservice: #指定給某個(gè)目標(biāo)服務(wù)發(fā)起請(qǐng)求時(shí)的負(fù)載均衡規(guī)則,這里是目標(biāo)服務(wù)的服務(wù)名稱ribbon:NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule #負(fù)載均衡規(guī)則
??NacosRule 負(fù)載均衡策略會(huì)優(yōu)先尋找與自己在同一集群的服務(wù),只有在同一集群中找不到服務(wù)提供者,才去其它集群尋找,并且當(dāng)使用了其他集群的服務(wù)時(shí),服務(wù)消費(fèi)者中會(huì)提示警告信息。如果一個(gè)集群中的服務(wù)提供者有多個(gè)實(shí)例,則會(huì)使用隨機(jī)調(diào)用的策略。
6.3 配置實(shí)例的權(quán)重
??當(dāng)配置了優(yōu)先訪問(wèn)同一集群內(nèi)的服務(wù)時(shí),在同一集群內(nèi)如果有多個(gè)服務(wù)提供者實(shí)例的話,此時(shí)會(huì)使用隨機(jī)訪問(wèn)的策略。當(dāng)有時(shí)候,服務(wù)器設(shè)備之間的性能是有差異,部分實(shí)例所在的機(jī)器性能較好,另一些較差,我們可能會(huì)希望性能好的機(jī)器能承擔(dān)更多的用戶請(qǐng)求,而 Nacos 也提供了權(quán)重配置來(lái)讓我們控制實(shí)例的訪問(wèn)頻率,權(quán)重越大則訪問(wèn)頻率越高。
??我們可以在 Nacos 的控制臺(tái)中設(shè)置實(shí)例的權(quán)重值,點(diǎn)擊實(shí)例后面的編輯按鈕,彈出窗口可以設(shè)置權(quán)重值,如下圖所示。所有的實(shí)例的權(quán)重值默認(rèn)都是1,我們可以將將權(quán)重值設(shè)置為 0~1,權(quán)重越低,被訪問(wèn)到的概率就越低,為 0 時(shí)則完全不會(huì)被訪問(wèn)到。
七、小結(jié)
把今天最好的表現(xiàn)當(dāng)作明天最新的起點(diǎn)..~