nacos將服務注冊到不同的命名空間下問題
nacos將服務注冊到不同的命名空間下
nacos是配置中心和注冊中心的結合,功能豐富。
Nacos是SpringCloudAlibaba架構中最重要的組件。
Nacos 是一個更易于幫助構建云原生應用的動態(tài)服務發(fā)現(xiàn)、配置和服務管理平臺,提供注冊中心、配置中心和動態(tài) DNS 服務三大功能。
能夠對接Springcloud、Spring、Dubbo等流行框架。
具體操作
如果一個nacos同時要配置多個數(shù)據(jù)庫適配的環(huán)境,啟動服務為了不影響其他環(huán)境的服務之間的接口調用,需要將服務注冊到另外的命名空間下,并配置新部署的網(wǎng)關服務ip和端口或者域名,那么修改application.yml配置最下面兩行的名稱進行注冊即可,否則之間拿過來原有的配置直接使用就會注冊到同一個空間下導致前端的接口調用出現(xiàn)一會發(fā)到dev環(huán)境的服務上面,一會發(fā)到新部署的服務上面的情況,如果想注冊到其他空間可以修改namespace即可,在nacos的服務管理-服務列表中可查看注冊的服務信息,(寫的有點啰嗦了不好意思):
#一個nacos同時要注冊多個數(shù)據(jù)庫適配的環(huán)境,啟動服務為了不影響其他環(huán)境的服務, #需要將服務注冊到另外的命名空間下,修改application.yml配置最下面兩行的名稱即可: spring. cloud: nacos: discovery: server-addr: http://nacos.glxt.dev.think.com/ group: config namespace: glxt-mysql
#每個服務配置的最上面有這樣的配置,如微服務A的glxt-A的配置文件 spring.cloud.nacos.discovery: ip: glxt-service-A port: 80
nacos在不同環(huán)境下指定不同的namespace的值
nacos的namespace是uuid,隨機生成的。但是生產和測試環(huán)境的namespace又不一樣。
在不想更改配置文件的前提下,如果動態(tài)設置namespace的值。
翻看源碼查看可以指定jvm啟動參數(shù) 或者環(huán)境變量
jvm參數(shù)
-Dans.namespace=3fc8e189-1a5c-49b6-8bb1-4aacd17cfe14 -Dacm.namespace=3fc8e189-1a5c-49b6-8bb1-4aacd17cfe14
一個指定配置中心,一個指定注冊中心。服務器ip地址和端口不同,只能更改host去實現(xiàn)了。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Java基于Javafaker生成測試數(shù)據(jù)
這篇文章主要介紹了Java基于Javafaker生成測試數(shù)據(jù)的方法,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下2020-12-12