Springcloud中的Nacos Config服务配置流程分析

目录
  • 简介
  • nacos config快速开始
    • 依赖引入
    • 配置nacos config
    • 启动测试
    • 配置动态更新配置

简介

前边写过几个微服务,订单微服务,商品微服务,账户微服务,库存微服务,每个微服务都去配置自己的配置文件,每个微服务一个yml配置文件,这样如果微服务足够多,对于配置文件的管理就很麻烦,如果配置文件变动需要更改,则需要我们一个一个的去改。例如开发环境,测试环境,生产环境等等,而且配置文件无法实时更新。我们修改了配置文件之后,必须重新启动微服务才能使配置生效。配置中心就可以解决配置问题。
配置中心流程:
首先把项目中各种配置全部都放到一个集中的地方进行统一管理,并提供一套标准的接口。
当各个服务需要获取配置的时候,就来配置中心的接口拉取自己的配置。
当配置中心中的各种参数有更新的时候,也能通知到各个服务实时的过来同步最新的信息,使之动态更新。

nacos config快速开始

以用户微服务为例,进行统一的配置。

依赖引入

   <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>2.1.0.RELEASE</version>
        </dependency>

配置nacos config

现在需要将原来的application.yml配置在nacos的服务配置 管理中进行,而原本微服务需要新建一个bootstrap.yml作为配置文件。配置文件的优先级:bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml

spring:
  application:
    name: springcloud-user
  cloud:
    nacos:
      config:
        server-addr: 192.168.5.130:8848 #nacos中心地址i
        file-extension: yaml # 配置文件格式
  profiles:
    active: dev # 环境标识

nacos服务中心配置

新建配置

注意:dataid配置需要application.name+dev.yaml

对应的数据库表:

启动测试

注释本地的application.yam中的内容, 启动程序进行测试
如果依旧可以成功访问程序,说明我们nacos的配置中心功能已经实现

配置动态更新配置

配置中心配置动态的属性,在代码里边进行获取。

config:
  appName: user

代码里边获取:

@RestController
@RefreshScope /* 只需要在需要动态读取配置的类上添加此注解就可以 */
public class NacosConfigController {
    @Value( "${config.appName}" )
    private String appName;
    /* 2 注解方式 */
    @GetMapping( "/nacos-config" )
    public String nacosConfing()
    {
        return(appName);
    }
}

改配置

这里就不进行讲解所有微服务的配置了。

到此这篇关于Springcloud中的Nacos Config服务配置的文章就介绍到这了,更多相关Springcloud Nacos服务配置内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Nacos Discovery服务治理解决方案

    目录 前言 服务治理 什么是服务治理? 常见的注册中心 Zookeeper Eureka Consul Nacos Nacos 入门 搭建nacos环境 将商品微服务注册到nacos 将订单微服务注册到nacos 总结 前言 上一章中,我们利用用户–订单–商品,实现了三个简单的微服务,实现了微服务之间的调用.但不知道大家有没有发现,我们是通过硬编码的方式,把服务者,消费者的服务Url,写到了代码中,这样做肯定是不行的,存在着许多的问题,比如: 一旦服务提供者地址变化,就需要手工修改代码一旦是多个

  • Nacos 版本不一致报错Request nacos server failed解决

    目录 正文 原因分析 版本不一致 解决方案 总结 正文 在做微服务开发中,测试环境使用Nacos没有问题,但是生产环境服务启动一直报错: com.alibaba.nacos.api.exception.NacosException: Request nacos server failed:     at com.alibaba.nacos.client.naming.remote.gprc.NamingGrpcClientProxy.requestToServer(NamingGrpcClien

  • SpringCloud Nacos配置中心管理超详细讲解

    目录 一.Nacos配置管理 1.1 统一配置管理 1.1.1在nacos中添加配置文件 1.1.2 从微服务拉取配置 1.2 配置热更新 1.2.1 方式一 1.2.2 方式二 1.3 配置共享 一.Nacos配置管理 Nacos除了可以做注册中心,同样可以做配置管理来用 1.1 统一配置管理 当微服务部署越来越多,达到数十,数百时,逐个修改微服务配置就会很麻烦,且容易出错.我们需要一种统一配置管理方案,可以集中管理所有实例的配置. Nacos一方面更可以将配置集中管理另一方面在配置变更时,及

  • Nacos 动态服务发现、配置和服务管理平台初体验

    目录 Nacos简介 Nacos特性 1.服务发现与服务健康检查 2.动态配置服务 3.动态DNS服务 4.服务及其元数据管理 安装与启动 (1). 启动 (2). 访问 Nacos配置中心 Nacos注册中心 使用 Nacos简介 Nacos 英文全称为 Dynamic Naming and Configuration Service,是一个由阿里巴巴团队使用 Java 语言开发的开源项目.官网地址:https://nacos.io Nacos特性 1.服务发现与服务健康检查 Nacos作为注

  • SpringCloud将Nacos作为配置中心实现流程详解

    目录 1.引入依赖 2.配置Bootstrap.yml 3.配置application.yml 4.Controller测试接口 在Nacos中添加配置信息 匹配规则-理论 dataId的完整格式 配置新增 Namespace+Group+DatalD讲解 实例-三种方案加载配置 1.dataId方案 2.Group方案 3.Namespace方案 1.引入依赖 <dependencies> <!--nacos-config--> <dependency> <gr

  • Spring Cloud 整合 nacos实现动态配置中心的详细步骤

    目录 前提条件 整合步骤 1. 添加依赖 2. 新建 nacos 配置 3. bootstrap.properties 配置 4. 配置dataId 4.1 自动配置 dataId 4.2 手动设置 dataId 5.获取数据 总结 源码 参考文献 上一篇文章讲解了Spring Cloud 整合 nacos 实现服务注册与发现,nacos除了有服务注册与发现的功能,还有提供动态配置服务的功能.本文主要讲解Spring Cloud 整合nacos实现动态配置服务.主要参考官方部署手册点我. 前提条

  • Springcloud中的Nacos Config服务配置流程分析

    目录 简介 nacos config快速开始 依赖引入 配置nacos config 启动测试 配置动态更新配置 简介 前边写过几个微服务,订单微服务,商品微服务,账户微服务,库存微服务,每个微服务都去配置自己的配置文件,每个微服务一个yml配置文件,这样如果微服务足够多,对于配置文件的管理就很麻烦,如果配置文件变动需要更改,则需要我们一个一个的去改.例如开发环境,测试环境,生产环境等等,而且配置文件无法实时更新.我们修改了配置文件之后,必须重新启动微服务才能使配置生效.配置中心就可以解决配置问

  • 聊聊SpringCloud中的Ribbon进行服务调用的问题

    目录 1.Robbon 1.1.Ribbon概述 1.2.Ribbon负载均衡演示 1.3.Ribbon核心组件IRule 1.4.Ribbon负载均衡算法 1.4.1.轮询算法原理 负载均衡算法: 1.4.2.RoundRobinRule 源码 1.4.3.手写轮询算法 前置内容(1).微服务理论入门和手把手带你进行微服务环境搭建及支付.订单业务编写(2).SpringCloud之Eureka服务注册与发现(3).SpringCloud之Zookeeper进行服务注册与发现(4).Spring

  • Redis Sentinel服务配置流程(详解)

    1.Redis Sentinel服务配置 1.1简介 Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务: 监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常. 提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过API 向管理员或者其他应用程序发送通知. 自动故障迁移(Automatic failover): 当一个主服务器不

  • 在idea打包并上传到云服务项目流程分析

    一.首先 得先在idea打包好. 我使用的是springboot框架的项目 1.先开启自己的项目 在idea的最右侧有个这个边框,点击Maven 如果之前有该项目的打包,可以点击clean去清理之前的缓存,然后点击package进行打包项目 二.打包好了之后我们就需要自己的云服务器了 可以使用SecureCRT或者XShell插件操纵我们的阿里云服务器. 这里我使用的是XShell, 在此之前 ,我们需要云服务的环境搭配好的前提下,java jdk的环境,mysql数据库的搭建,还有tomcat

  • Android蓝牙服务启动流程分析探索

    目录 1.SystemServer 2.BluetoothService 3.BluetoothManagerService 首先我们要知道,主要系统服务都是在 SystemServer 启动的,蓝牙也是如此: 1.SystemServer 源码路径:/frameworks/base/services/java/com/android/server/SystemServer.java private void startOtherServices(@NonNull TimingsTraceAnd

  • SpringBoot工程中Spring Security应用实践记录流程分析

    目录 SpringSecurity 应用 简介 认证授权分析 SpringSecurity 架构设计 快速入门实践 创建项目 添加项目依赖 启动服务访问测试 自定义认证逻辑 认证流程分析 定义security配置类 定义数据访问层对象 定义UserDetailService接口实现类 自定义登陆页面 启动服务进行访问测试 授权逻辑设计及实现 修改授权配置类 定义资源访问对象 启动服务实现访问测试 总结(Summary) SpringSecurity 应用 简介 Spring Security是一

  • 详解RocketMQ中的消费者启动与消费流程分析

    目录 一.简介 1.1 RocketMQ 简介 1.2 工作流程 二.消费者启动流程 2.1 实例化消费者 2.2 设置NameServer和订阅topic过程 2.2.1 添加tag 2.2.2 发送心跳至Broker 2.2.3上传过滤器类至FilterServer 2.3 注册回调实现类 2.4 消费者启动 三.pull/push 模式消费 3.1 pull模式-DefaultMQPullConsumer 3.2 push模式-DefaultMQPushConsumer 3.3 小结 四.

  • Php中文件下载功能实现超详细流程分析

    客户端从服务端下载文件的流程分析: 浏览器发送一个请求,请求访问服务器中的某个网页(如:down.php),该网页的代码如下. 服务器接受到该请求以后,马上运行该down.php文件 运行该文件的时候,必然要把将要被下载的文件读入内存当中(这里是圣诞狂欢.jpg这张图片),这里通过fopen()函数完成该动作 注意:任何有关从服务器下载的文件操作,必然需要先在服务端将文件读入内存当中 现在文件已经在内存当中了,这是需要从内存当中读取文件,通过fread()函数完成该动作 需要注意的是,如果文件较

  • Spring Cloud Alibaba Nacos Config进阶使用

    目录 一.SpringBoot 使用 Nacos Config 实现多环境切换 1. 现象 2. 引入依赖 3. 添加bootstrap.yaml配置文件 4. 配置对应关系图 5. 文件格式简述 6. 启动nacos 8. 添加测试controller 9. 启动Springboot工程并观察到如下日志则为成功 10. 浏览器验证 11. 调整激活环境 12. 新建test环境配置 13. test配置关系图 14. 测试方法 15. 重启springboot服务,监控控制台输出 16. 浏览

  • SpringBoot项目改为SpringCloud项目使用nacos作为注册中心的方法

    本章讲解的是在不改变原有业务的情况下将springboot改为springcloud项目使用nacos作为注册中心 首先在官网下载好nacos注册中心,在bin目录中startup.cmd文件为启动命令默认端口号是8888 接下来修改原有项目依赖 在父依赖模块添加springcloud依赖版本,若没有父依赖直接在项目指定也一样 首先指定版本 <properties> <cloud.version>Hoxton.RELEASE</cloud.version> <al

随机推荐