摘要:實(shí)現(xiàn)配置和注冊(cè)中心最近,阿里開源的比較火,可以和和共用,對(duì)升級(jí)到非常的方便。只需要添加依賴,使用配置注冊(cè)中心地址即可。配置不生效,沒(méi)有使用注解刷新配置分清注冊(cè)中心和配置中心是兩個(gè)概念,需要配置兩個(gè)地址學(xué)會(huì)看源碼,看維基。
Springcloud-nacos實(shí)現(xiàn)配置和注冊(cè)中心
最近,阿里開源的nacos比較火,可以和springcloud和dubbo共用,對(duì)dubbo升級(jí)到springcloud非常的方便。這里學(xué)習(xí)一下他的配置和注冊(cè)中心。我主要記錄一下它的使用方式和踩得坑。
nacos簡(jiǎn)單介紹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官網(wǎng)摘抄下來(lái)的,總結(jié)一下nacos有以下有點(diǎn)幾個(gè)優(yōu)點(diǎn):
(1)它支持配置中心管理(含圖形化界面)
(2)部署交付簡(jiǎn)單
(3)包含注冊(cè)中心,不用獨(dú)自搭建配置和注冊(cè)中心。
(4)完美集成spring cloud和dubbo拓展性好
(1)從 Github 上下載源碼方式
???------ git clone https://github.com/alibaba/na...
???------ cd nacos/
???------ mvn -Prelease-nacos clean install -U
???------ ls -al distribution/target/
???------ cd distribution/target/nacos-server-$version/nacos/bin
(2)解壓,啟動(dòng)nacos
???------ unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz
???------ cd nacos/bin
???------ sh startup.sh -m standalone
???完成,集群高可用請(qǐng)自行研究,本文不過(guò)多贅述。
springcloud使用nacos作為配置中心特別簡(jiǎn)單。只需要添加依賴,使用bootstrap配置注冊(cè)中心地址即可。
(1)添加nacos的配置中心依賴
???
??????
??????
???
(2)配置bootstrap.properties文件
??---- #配置服務(wù)的名字
??---- spring.application.name=provider-service
??---- #nacos配置中心的地址
??---- spring.cloud.nacos.config.server-addr=nacos.ailijie.top
??---- #nacos配置的編碼方式
??---- spring.cloud.nacos.config.encode=utf-8
??---- #配置組名子,需要在nacos的配置設(shè)置,不然找不到
??---- spring.cloud.nacos.config.group=PROVIDER_GROUP
??---- #配置后綴,properties不需要
??---- spring.cloud.nacos.config.file-extension=yml
??---- #加載nacos多個(gè)配置文件
??---- spring.cloud.nacos.config.shared-dataids=provider-service.properties,test.properties
??---- #刷新加載的其他環(huán)境
??----spring.cloud.nacos.config.refreshable-dataids=provider-service.properties,test.properties
(3)簡(jiǎn)單介紹一下,使用nacos配置中心,客戶端會(huì)定時(shí)心跳拉去配置,環(huán)境變量會(huì)動(dòng)態(tài)刷新,但是在bean中需要使用 @RefreshCode注解去刷新,不然不生效。數(shù)據(jù)庫(kù)配置可以自定義數(shù)據(jù)源。加載其他配置文件的話,需要使用refres-dataids去刷新環(huán)境。
同樣的,nacos實(shí)現(xiàn)注冊(cè)中心也是相當(dāng)?shù)暮?jiǎn)單,nacos配置成功后,我們只需要添加依賴,注解,配置注冊(cè)中心地址即可。
(1)添加依賴
??
????
????
??
(2)在啟動(dòng)類上添加?@EnableDiscoveryClient 注解
(3)配置注冊(cè)中心地址
??---- #配置服務(wù)名字
??---- spring.application.name=xxx-service
??---- #配置服務(wù)集群名字
??---- spring.cloud.nacos.discovery.cluster-name=consumer-service
??---- #配置注冊(cè)中心地址
??---- spring.cloud.nacos.discovery.server-addr=nacos.ailijie.top
完成,就是這樣簡(jiǎn)單。
下面是我遇到的一些問(wèn)題:
(1)使用版本管理,學(xué)習(xí)新項(xiàng)目我們首先需要了解版本兼容特性,不然會(huì)出現(xiàn)很多問(wèn)題。
(2)配置不生效,沒(méi)有使用@RefreshCode注解刷新配置
(3)分清注冊(cè)中心和配置中心是兩個(gè)概念,需要配置兩個(gè)地址
(4)學(xué)會(huì)看源碼,看維基。
未完待續(xù),接下來(lái)會(huì)寫服務(wù)發(fā)現(xiàn)feign和springdataflow相關(guān)話題。有問(wèn)題請(qǐng)留言。
個(gè)人博客原文地址: https://blog.ailijie.top/arch...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/75153.html
摘要:服務(wù)續(xù)約在服務(wù)注冊(cè)完成之后,服務(wù)提供者需要維護(hù)一個(gè)心跳來(lái)告知注冊(cè)中心服務(wù)實(shí)例處于正常運(yùn)行狀態(tài)中,防止注冊(cè)中心將正常的服務(wù)實(shí)例剔除出注冊(cè)中心。 Spring Cloud Eureka 目錄 前言 構(gòu)建服務(wù)注冊(cè)中心 服務(wù)注冊(cè)與發(fā)現(xiàn) Eureka的基礎(chǔ)架構(gòu) Eureka的服務(wù)治理機(jī)制 Eureka的配置 代碼地址 前言 服務(wù)治理 ?隨著微服務(wù)應(yīng)用的不斷增加,靜態(tài)配置會(huì)越來(lái)越難以維護(hù),并且...
摘要:是一個(gè)相對(duì)比較新的微服務(wù)框架,年才推出的版本雖然時(shí)間最短但是相比等框架提供的全套的分布式系統(tǒng)解決方案。提供線程池不同的服務(wù)走不同的線程池,實(shí)現(xiàn)了不同服務(wù)調(diào)用的隔離,避免了服務(wù)器雪崩的問(wèn)題。通過(guò)互相注冊(cè)的方式來(lái)進(jìn)行消息同步和保證高可用。 Spring Cloud 是一個(gè)相對(duì)比較新的微服務(wù)框架,...
摘要:統(tǒng)計(jì)服務(wù)的調(diào)用次調(diào)和調(diào)用時(shí)間的監(jiān)控中心。調(diào)用關(guān)系說(shuō)明服務(wù)容器負(fù)責(zé)啟動(dòng),加載,運(yùn)行服務(wù)提供者。服務(wù)提供者在啟動(dòng)時(shí),向注冊(cè)中心注冊(cè)自己提供的服務(wù)。調(diào)度中心基于訪問(wèn)壓力自動(dòng)增減服務(wù)提供者。 隨著互聯(lián)網(wǎng)的發(fā)展,網(wǎng)站應(yīng)用的規(guī)模不斷擴(kuò)大,常規(guī)的垂直應(yīng)用架構(gòu)已無(wú)法應(yīng)對(duì),分布式服務(wù)架構(gòu)以及流動(dòng)計(jì)算架構(gòu)勢(shì)在必行,亟需一個(gè)治理系統(tǒng)確保架構(gòu)有條不紊的演進(jìn)。showImg(https://segmentfau...
摘要:口服務(wù)的負(fù)載均衡。服務(wù)的注冊(cè)與發(fā)現(xiàn)接口管理服務(wù)注冊(cè)是指向服務(wù)注冊(cè)中心注冊(cè)一個(gè)服務(wù)實(shí)例,服務(wù)提供者將自己的服務(wù)信息如服務(wù)名地址等告知服務(wù)注冊(cè)中心。服務(wù)注冊(cè)中心會(huì)提供服務(wù)的健康檢查方案,檢查被注冊(cè)的服務(wù)是否可用。服務(wù)降級(jí)的功能。 微服務(wù)具有以下的特點(diǎn)。 口 按照業(yè)務(wù)來(lái)劃分服務(wù),單個(gè)服務(wù)代碼量小,業(yè)務(wù)單一,易于維護(hù)。 口 每個(gè)微服務(wù)都有自己獨(dú)立的基礎(chǔ)組件,例如數(shù)據(jù)庫(kù)、 緩存等,且運(yùn)行在獨(dú)立...
摘要:?jiǎn)?dòng)容器,加載,運(yùn)行服務(wù)提供者。服務(wù)提供者在啟動(dòng)時(shí),在注冊(cè)中心發(fā)布注冊(cè)自己提供的服務(wù)。注冊(cè)中心返回服務(wù)提供者地址列表給消費(fèi)者,如果有變更,注冊(cè)中心將基于長(zhǎng)連接推送變更數(shù)據(jù)給消費(fèi)者。 一 為什么需要 dubbo 很多時(shí)候,其實(shí)我們使用這個(gè)技術(shù)的時(shí)候,可能都是因?yàn)轫?xiàng)目需要,所以,我們就用了,但是,至于為什么我們需要用到這個(gè)技術(shù),可能自身并不是很了解的,但是,其實(shí)了解技術(shù)的來(lái)由及背景知識(shí),對(duì)...
閱讀 3792·2021-11-12 10:34
閱讀 2812·2021-09-22 15:14
閱讀 777·2019-08-30 15:53
閱讀 3195·2019-08-30 12:53
閱讀 1279·2019-08-29 18:32
閱讀 2761·2019-08-29 16:41
閱讀 1056·2019-08-26 13:40
閱讀 1795·2019-08-23 18:07