最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Nacos配置中心的實(shí)現(xiàn)

 更新時間:2022年08月31日 17:08:58   作者:一個風(fēng)輕云淡  
Spring Cloud Alibaba 是阿里巴巴提供的一站式微服務(wù)開發(fā)解決方案。而 Nacos 作為 Spring Cloud Alibaba 的核心組件之一,提供了兩個非常重要的功能:注冊中心和配置中心,我們今天來了解和實(shí)現(xiàn)一下二者

基礎(chǔ)配置

新建module:cloudalibaba-config-nacos-client3377

pom文件

版本號已經(jīng)由父工程控制

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>cloud2020</artifactId>
        <groupId>com.atguigu.springcloud</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>cloudalibaba-config-nacos-client3377</artifactId>
    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <!--nacos-config-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <!--nacos-discovery-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--web + actuator-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <!--一般基礎(chǔ)配置-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

YML文件

倆個yml文件:

Nacos同springcloud-config一樣,在項(xiàng)目初始化時,要保證先從配置中心進(jìn)行配置拉取,

拉取配置之后,才能保證項(xiàng)目的正常啟動。

springboot中配置文件的加載是存在優(yōu)先級順序的,bootstrap優(yōu)先級高于application

bootstrap.yml文件

# nacos配置
server:
  port: 3377
spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服務(wù)注冊中心地址
      config:
        server-addr: localhost:8848 #Nacos作為配置中心地址
        file-extension: yaml #指定yaml格式的配置

application.yml文件

spring:
  profiles:
    active: dev # 表示開發(fā)環(huán)境

Nacos界面配置對應(yīng)

公式:${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

prefix 默認(rèn)為 spring.application.name 的值

spring.profile.active 即為當(dāng)前環(huán)境對應(yīng)的 profile,可以通過配置項(xiàng) spring.profile.active 來配置。

file-exetension 為配置內(nèi)容的數(shù)據(jù)格式,可以通過配置項(xiàng) spring.cloud.nacos.config.file-extension 來配置

具備回滾功能

主啟動類

@EnableDiscoveryClient
@SpringBootApplication
public class NacosConfigClientMain3377
{
    public static void main(String[] args) {
            SpringApplication.run(NacosConfigClientMain3377.class, args);
    }
}

Controller類

@RestController
@RefreshScope
public class ConfigClientController {
    @Value("${config.info}")
    private  String configInfo;
    @GetMapping("/config/info")
    public String getConfigInfo() {
        return configInfo;
    }
}

配置配置中心文件

打開nacos ,登錄到http://localhost:8848/nacos

填寫配置內(nèi)容

config:
 info: "dev config version=1"

填寫以后發(fā)布

測試1

打開瀏覽器訪問:localhost:3377/config/info

修改配置文件:

config:
 info: "dev config version=2"

測試1

打開瀏覽器訪問:localhost:3377/config/info

Nacos中的匹配規(guī)則

Nacos作為配置中心-分類配置

問題

多環(huán)境多項(xiàng)目管理

問題1:

實(shí)際開發(fā)中,通常一個系統(tǒng)會準(zhǔn)備

dev開發(fā)環(huán)境

test測試環(huán)境

prod生產(chǎn)環(huán)境。

如何保證指定環(huán)境啟動時服務(wù)能正確讀取到Nacos上相應(yīng)環(huán)境的配置文件呢?

問題2:

一個大型分布式微服務(wù)系統(tǒng)會有很多微服務(wù)子項(xiàng)目,

每個微服務(wù)項(xiàng)目又都會有相應(yīng)的開發(fā)環(huán)境、測試環(huán)境、預(yù)發(fā)環(huán)境、正式環(huán)境......

那怎么對這些微服務(wù)配置進(jìn)行管理呢?

Nacos的圖形化管理界面

配置管理

命名空間

三種方案加載配置

DataID方案

指定spring.profile.active和配置文件的DataID來使不同環(huán)境下讀取不同的配置

測試2

重新啟動3377

打開瀏覽器訪問:http://localhost:3377/config/info

Group方案

通過Group實(shí)現(xiàn)環(huán)境區(qū)分

在config下增加一條group的配置即可??膳渲脼镈EV_GROUP或TEST_GROUP

Namespace方案

bootstrap

# nacos注冊中心
server:
  port: 3377
spring:
  application:
    name: nacos-order
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #Nacos服務(wù)注冊中心地址
      config:
        server-addr: localhost:8848 #Nacos作為配置中心地址
        file-extension: yaml #這里我們獲取的yaml格式的配置
        namespace: 5da1dccc-ee26-49e0-b8e5-7d9559b95ab0
        #group: DEV_GROUP
        group: TEST_GROUP

application

# Nacos注冊配置,application.yml
spring:
  profiles:
    #active: test
    active: dev
    #active: info

到此這篇關(guān)于詳解Nacos配置中心的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Nacos配置中心內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解釋為什么Java中“1000==1000”為false而”100==100“為true

    解釋為什么Java中“1000==1000”為false而”100==100“為true

    在日常編程中,我們經(jīng)常遇到一些看似簡單卻隱藏著復(fù)雜邏輯的問題,這篇文章主要介紹了解釋為什么Java中“1000==1000”為false而”100==100“為true,需要的朋友可以參考下
    2024-01-01
  • JAVA解析XML字符串簡單方法代碼案例

    JAVA解析XML字符串簡單方法代碼案例

    這篇文章主要介紹了JAVA解析XML字符串簡單方法代碼案例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-09-09
  • java數(shù)據(jù)庫連接池的特點(diǎn)及步驟

    java數(shù)據(jù)庫連接池的特點(diǎn)及步驟

    大家好,本篇文章主要講的是數(shù)據(jù)庫連接池的特點(diǎn)及步驟,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Java匿名類和匿名函數(shù)的概念和寫法

    Java匿名類和匿名函數(shù)的概念和寫法

    匿名函數(shù)寫法和匿名類寫法的前提必須基于函數(shù)式接口匿名函數(shù)寫法和匿名類寫法其本質(zhì)是同一個東西,只是簡化寫法不同使用Lambda表達(dá)式簡寫匿名函數(shù)時,可以同時省略實(shí)現(xiàn)類名、函數(shù)名,這篇文章主要介紹了Java匿名類和匿名函數(shù)的概念和寫法,需要的朋友可以參考下
    2023-06-06
  • java算法實(shí)現(xiàn)紅黑樹完整代碼示例

    java算法實(shí)現(xiàn)紅黑樹完整代碼示例

    這篇文章主要介紹了java算法實(shí)現(xiàn)紅黑樹完整代碼示例,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Java數(shù)據(jù)結(jié)構(gòu)之棧的詳解

    Java數(shù)據(jù)結(jié)構(gòu)之棧的詳解

    這篇文章主要介紹了Java數(shù)據(jù)結(jié)構(gòu)之棧簡單操作的相關(guān)資料,需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-09-09
  • SpringBoot+kaptcha實(shí)現(xiàn)圖片驗(yàn)證碼功能詳解

    SpringBoot+kaptcha實(shí)現(xiàn)圖片驗(yàn)證碼功能詳解

    這篇文章主要為大家詳細(xì)介紹了SpringBoot如何結(jié)合kaptcha實(shí)現(xiàn)圖片驗(yàn)證碼功能,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下
    2024-01-01
  • springboot普通類中如何獲取session問題

    springboot普通類中如何獲取session問題

    這篇文章主要介紹了springboot普通類中如何獲取session問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • java注解@Override用法舉例詳解

    java注解@Override用法舉例詳解

    這篇文章主要介紹了java注解@Override用法的相關(guān)資料,@Override?是Java中的一個注解,用于表明一個方法重寫了父類或接口中的方法,它可以幫助編譯器檢查方法簽名是否正確,避免拼寫錯誤或參數(shù)列表不一致導(dǎo)致的低級錯誤,需要的朋友可以參考下
    2024-12-12
  • 一文帶你掌握java8中的reduce操作

    一文帶你掌握java8中的reduce操作

    reduce?操作是一種通用的歸約操作,它可以實(shí)現(xiàn)從?Stream?中生成一個值,其生成的值不是隨意的,而是根據(jù)指定的計(jì)算模型,下面我們就來深入了解下java8中的reduce操作吧
    2023-12-12

最新評論

攀枝花市| 景德镇市| 菏泽市| 五莲县| 广西| 沽源县| 彭水| 基隆市| 马边| 青海省| 嘉黎县| 灵台县| 太白县| 达孜县| 岳阳县| 来凤县| 望都县| 夏津县| 黄陵县| 淄博市| 岐山县| 乌鲁木齐市| 乐亭县| 宁安市| 莲花县| 清新县| 奉节县| 汉沽区| 积石山| 赤城县| 娄烦县| 寿光市| 当涂县| 桂平市| 重庆市| 南充市| 凤凰县| 蓬莱市| 平邑县| 遂昌县| 德兴市|