微服务之配置管理中心(Nacos)(微服务配置中心作用)

  本篇文章为你整理了微服务之配置管理中心(Nacos)(微服务配置中心作用)的详细内容,包含有微服务配置中心选择 微服务配置中心作用 微服务 配置中心 数据库 微服务配置文件管理 微服务之配置管理中心(Nacos),希望能帮助你了解 微服务之配置管理中心(Nacos)。

  在当微服务架构中,当实例越来越多,达到数十、数百时,去逐个修改每1个微服务的配置就会让人抓狂,而且很容易出错。

  这时我们就需要1个可以集中保存微服务配置的配置中心;

  

  一、配置中心概念

  我们可以提取每1个微服务架构中实例的经常变化的配置项,集中保存到1个配置中心里;

  

  当需要修改配置时直接在配置中心进行修改,配置中心发出变更通知,微服务去配置中心主动拉取更新的配置,实现配置的热更新。

  

  二、Nacos配置中心

  Nacos不仅可以作为微服务架构的服务注册中心,还能作微服务的集中配置管理中心;

  单机启动Nacos

  

startup.cmd -m standalone

 

  1.添加Nacos配置

  2.拉取Nacos配置

  如果微服务想要拉取Nacos中管理的配置项与本地的application.yml配置项进行合并。

  需要在SpringBoot项目中引入了1种新的配置文件bootstrap.yml配置文件;

  bootstrap.yml会在application.yml之前被读取,而且其内容优先级高于application.yaml,不会被application.yaml覆盖;

  2.1.引入Nacos客户端依赖

  引入连接Nacos配置管理中心的客户端依赖;

  

 !--nacos配置管理依赖-- 

 

   dependency

   groupId com.alibaba.cloud /groupId

   artifactId spring-cloud-starter-alibaba-nacos-config /artifactId

   /dependency

 

  2.2.添加bootstrap.yml

  在user-service中添加一个bootstrap.yml文件,当项目启动时可以连接到Nacos配置管理中心;

  ${spring.application.name}+${spring.cloud.nacos.config.file-extension}作为配置文件的Data ID来读取Nacos的配置。

  

spring:

 

   application:

   name: user-service

   cloud:

   nacos:

   config:

   server-addr: localhost:8848 # nacos 配置中心地址

   file-extension: yaml # 文件扩展名

 

  2.3.读取配置信息

  读取从Nacos配置中心拉取到的配置信息;

  

  3.配置热更新

  当Nacos配置管理中心的配置项修改之后,不重启SpringBoot的前提下进行配置热更新;

  3.1.局部更新

  

  3.2.全局更新

  3.2.1.实例类

  @Configuration注解标注的类,实例化出来的是1个动态代理对象,不能被SpringMVC直接序列化成json数据响应给前端;

  引入实体类

  

  4.多环境配置文件

  Nacos也支持了对同1服务进行不同环境的个性配置;

  4.1.添加Nacos环境

  

  4.2.配置SpringBoot

  通过配置文件指定SpringBoot项目启动时,拉取哪1套环境配置?

  Nacos配置中心的客户端会以bootstrap.yml中配置name+active+file-extension作为键,去Nacos配置拉取配置项;

  

  4.3.配置文件的优先级

  当Nacos、微服务本地的配置文件,同时存在且属性相时,优先级有高低之分:

  

  5.配置环境隔离

  当微服务的模块很多时,所有微服务的配置都堆放在一起,看起来会十分臃肿,不易区分和管理。

  

  5.1.新增命名空间

  Nameapace其实一个配置环境的集合,接下来创建2个环境;

  

  5.2.创建配置文件

  在创建的命名空间中创建相同名称的配置文件

  public命名空间

  

  

  dev命名空间

  test命名空间

  5.3.读取命名空间中的配置信息

  修改user-service服务的配置文件bootstrap.yml 读取指定的namespace 、group、data id

  

spring:

 

   application:

   name: user-service

  # profiles:

  # active: dev

   cloud:

   nacos:

   config:

   server-addr: localhost:8848 # nacos 配置中心地址

   file-extension: yaml # 文件扩展名

   namespace: 13c7a5e5-8099-4318-b2f8-9992b23ba454 #指定namespace的id

   group: DEFAULT_GROUP # 指定组名

 

  

  6.Nacos集群

  Nacos作为服务注册中心还作为服务配置中心,如果Nacos宕机整个微服务架构就会出现服务雪崩;

  在生产环境中为了确保Nacos服务的高可用,我们会Nacos集群,Nacos集群共享1台数据库确保服务注册中心还作为服务配置中心的数据共享;

  

  

  参考

  以上就是微服务之配置管理中心(Nacos)(微服务配置中心作用)的详细内容,想要了解更多 微服务之配置管理中心(Nacos)的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: