您好,登錄后才能下訂單哦!
這篇文章主要講解了“Springcloud-nacos怎么實現配置和注冊中心”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Springcloud-nacos怎么實現配置和注冊中心”吧!
最近,阿里開源的nacos比較火,可以和springcloud和dubbo共用,對dubbo升級到springcloud非常的方便。這里學習一下他的配置和注冊中心。我主要記錄一下它的使用方式和踩得坑。
Nacos 致力于幫助您發現、配置和管理微服務。Nacos 提供了一組簡單易用的特性集,幫助您快速實現動態服務發現、服務配置、服務元數據及流量管理。
Nacos 幫助您更敏捷和容易地構建、交付和管理微服務平臺。 Nacos 是構建以“服務”為中心的現代應用架構 (例如微服務范式、云原生范式) 的服務基礎設施。
以上是從nacos官網摘抄下來的,總結一下nacos有以下有點幾個優點:
(1)它支持配置中心管理(含圖形化界面)
(2)部署交付簡單
(3)包含注冊中心,不用獨自搭建配置和注冊中心。
(4)完美集成spring cloud和dubbo拓展性好
(1)從 Github 上下載源碼方式
???------ git clone https://github.com/alibaba/nacos.git
???------ cd nacos/
???------ mvn -Prelease-nacos clean install -U
???------ ls -al distribution/target/
???------ cd distribution/target/nacos-server-$version/nacos/bin
(2)解壓,啟動nacos
???------ unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz
???------ cd nacos/bin
???------ sh startup.sh -m standalone
???完成,集群高可用請自行研究,本文不過多贅述。
springcloud使用nacos作為配置中心特別簡單。只需要添加依賴,使用bootstrap配置注冊中心地址即可。
(1)添加nacos的配置中心依賴
???<dependency>
??????<groupId>org.springframework.cloud</groupId>
??????<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
???</dependency>
(2)配置bootstrap.properties文件
??---- #配置服務的名字
??---- spring.application.name=provider-service
??---- #nacos配置中心的地址
??---- spring.cloud.nacos.config.server-addr=nacos.ailijie.top
??---- #nacos配置的編碼方式
??---- spring.cloud.nacos.config.encode=utf-8
??---- #配置組名子,需要在nacos的配置設置,不然找不到
??---- spring.cloud.nacos.config.group=PROVIDER_GROUP
??---- #配置后綴,properties不需要
??---- spring.cloud.nacos.config.file-extension=yml
??---- #加載nacos多個配置文件
??---- spring.cloud.nacos.config.shared-dataids=provider-service.properties,test.properties
??---- #刷新加載的其他環境
??----spring.cloud.nacos.config.refreshable-dataids=provider-service.properties,test.properties
(3)簡單介紹一下,使用nacos配置中心,客戶端會定時心跳拉去配置,環境變量會動態刷新,但是在bean中需要使用 @RefreshCode注解去刷新,不然不生效。數據庫配置可以自定義數據源。加載其他配置文件的話,需要使用refres-dataids去刷新環境。
同樣的,nacos實現注冊中心也是相當的簡單,nacos配置成功后,我們只需要添加依賴,注解,配置注冊中心地址即可。
(1)添加依賴
??<dependency>
????<groupId>org.springframework.cloud</groupId>
????<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
??</dependency>
(2)在啟動類上添加?@EnableDiscoveryClient 注解
(3)配置注冊中心地址
??---- #配置服務名字
??---- spring.application.name=xxx-service
??---- #配置服務集群名字
??---- spring.cloud.nacos.discovery.cluster-name=consumer-service
??---- #配置注冊中心地址
??---- spring.cloud.nacos.discovery.server-addr=nacos.ailijie.top
完成,就是這樣簡單。
下面是我遇到的一些問題:
(1)使用版本管理,學習新項目我們首先需要了解版本兼容特性,不然會出現很多問題。
(2)配置不生效,沒有使用@RefreshCode注解刷新配置
(3)分清注冊中心和配置中心是兩個概念,需要配置兩個地址
(4)學會看源碼,看維基。
感謝各位的閱讀,以上就是“Springcloud-nacos怎么實現配置和注冊中心”的內容了,經過本文的學習后,相信大家對Springcloud-nacos怎么實現配置和注冊中心這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。