【微服务~Nacos】Nacos之配置中心

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 【微服务~Nacos】Nacos之配置中心

搭建服务

  • 项目名:nacos-config-2.1

添加坐标:

image.png

<dependencies>
        <!-- web 启动器 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
      <!-- nacos 服务发现 -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
    <!-- nacos 配置-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
    </dependencies>
  • 创建yml配置文件:bootstrap.yml

image.png

server:
  port: 8072                          # 端口号
spring:
  application:
    name: config-service              # 服务名
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:8848       # nacos 服务地址
        prefix: ${spring.application.name}  #data ID的前缀,默认服务名
        file-extension: yaml              # data ID的后缀:config-service.yaml
        group: DEFAULT_GROUP            # 组名
      discovery:
      server-addr: 127.0.0.1:8848   #nacos服务地址

创建服务

  • 编写启动类

image.png

package com.czxy.nacos;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class TestNacosCloudConfigApplication {
    public static void main(String[] args) {
        SpringApplication.run(TestNacosCloudConfigApplication.class, args);
    }
}
  • 编写处理类

image.png

package com.czxy.nacos.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController {
    @Value("${czxy.message:'默认值'}")
    private String msg;
    /**
     * http://localhost:8072/config/get
     */
    @RequestMapping("/get")
    public String get() {
        return msg;
    }
}

查询服务

  • 情况1,访问“默认数据”

http://localhost:8072/config/get

image.png

  • 情况2,访问yml文件配置信息  
czxy:
 message: 测试数据

image.png

  • 情况3:访问nacos中的配置数据

image.png

image.png

整合知多少

在 Nacos Spring Cloud 中,dataId 的完整格式如下


${prefix}-${spring.profile.active}.${file-extension}


显示profile中的数据


1)编写profile:application-demo.yml

image.png

server:
  port: 8073                          # 端口号
czxy:
  message: demo数据

2)修改启动项

-Dspring.profiles.active=demo

image.png

3)删除nacos配置后,测试

image.png

nacos 默认配置

  • 1)nacos配置 config-service.yaml 的 Data ID

7ba45836a8464fc38d649e6bbf315e06.png

2)测试

image.png

nacos 配置 profile

  • 1)配置nacos profile :config-service-demo.yaml

image.png

2)测试  

image.png

nacos配置文件加载顺序

spring boot、nacos各种配置文件的加载顺序


1.bootstrap.yml


2.application.yml


3.application-[profile].yml


4.[serviceName].yml #nacos配置


5.[serviceName]-[profile].yml #nacos配置


后面加载的文件,将覆盖前面文件的配置内容


相关文章
|
4天前
|
算法 安全 Java
微服务(四)-config配置中心的配置加解密
微服务(四)-config配置中心的配置加解密
|
4天前
|
消息中间件 监控 开发工具
微服务(三)-实现自动刷新配置(不重启项目情况下)
微服务(三)-实现自动刷新配置(不重启项目情况下)
|
30天前
|
Cloud Native Java Nacos
微服务时代的新宠儿!Spring Cloud Nacos实战指南,带你玩转服务发现与配置管理,拥抱云原生潮流!
【8月更文挑战第29天】Spring Cloud Nacos作为微服务架构中的新兴之星,凭借其轻量、高效的特点,迅速成为服务发现、配置管理和治理的首选方案。Nacos(命名和配置服务)由阿里巴巴开源,为云原生应用提供了动态服务发现及配置管理等功能,简化了服务间的调用与依赖管理。本文将指导你通过五个步骤在Spring Boot项目中集成Nacos,实现服务注册、发现及配置动态管理,从而轻松搭建出高效的微服务环境。
122 0
|
15天前
|
负载均衡 Java Nacos
SpringCloud基础2——Nacos配置、Feign、Gateway
nacos配置管理、Feign远程调用、Gateway服务网关
SpringCloud基础2——Nacos配置、Feign、Gateway
|
29天前
|
安全 Nacos 数据安全/隐私保护
升级指南:从Nacos 1.3.0 到 2.3.0,并兼容 Seata 的鉴权配置
本文详细介绍了如何在微服务环境下从 Nacos 1.3.0 升级到 2.3.0,并确保 Seata 各版本的兼容性。作者小米分享了升级过程中的关键步骤,包括备份配置、更新鉴权信息及验证测试等,并解答了常见问题。通过这些步骤,可以帮助读者顺利完成升级并提高系统的安全性与一致性。
80 8
升级指南:从Nacos 1.3.0 到 2.3.0,并兼容 Seata 的鉴权配置
|
1月前
|
Cloud Native Java Nacos
微服务注册中心-Nacos概述
该博客文章提供了对Nacos的全面概述,包括其基本介绍、与Spring Cloud集成的优势、主要功能以及如何在Spring Cloud Alibaba项目中作为服务注册中心使用Nacos。文章解释了Nacos是一个动态服务发现、配置管理和服务管理平台,支持服务发现、健康监测、动态配置、DNS服务和元数据管理。还介绍了如何下载和启动Nacos服务器,以及如何将微服务注册到Nacos中,包括修改pom.xml文件引入依赖、配置application.properties文件和使用@EnableDiscoveryClient注解开启服务注册发现功能。
微服务注册中心-Nacos概述
|
1月前
|
JSON Nacos 开发工具
微服务通过nacos实现动态路由
微服务通过nacos实现动态路由
54 7
|
1月前
|
运维 Java Nacos
Spring Cloud应用框架:Nacos作为服务注册中心和配置中心
Spring Cloud应用框架:Nacos作为服务注册中心和配置中心
|
30天前
|
存储 供应链 Nacos
Nacos Stream 引领微服务异步消息潮流,为数字化转型保驾护航,你跟上了吗?
【8月更文挑战第29天】在微服务架构中,异步消息处理框架至关重要。Nacos Stream 通过可靠的消息传递机制、优秀的扩展性及灵活的消息过滤与路由功能,在电商系统等场景下展现了巨大价值。其简化了开发过程,支持高并发消息处理,确保了微服务系统的稳定运行与平滑扩展,为复杂系统的构建提供了强有力的消息通信保障。
26 0
|
1月前
|
网络协议 微服务
【Azure 微服务】基于已经存在的虚拟网络(VNET)及子网创建新的Service Fabric并且为所有节点配置自定义DNS服务
【Azure 微服务】基于已经存在的虚拟网络(VNET)及子网创建新的Service Fabric并且为所有节点配置自定义DNS服务