微服务004-Nacos服务配置中心应用

服务配置中心

背景:

假如生产环境下,项目现在正在运行,此时修改了配置文件,我们需要让这些配置生效,通常的做法是不是要重启服务。但重启是不是会带来系统服务短时间的暂停,从而影响用户体验呢,还有可能会带来经济上的很大损失(例如双11重启下服务)。基于这样的背景,服务配置中心诞生了。

  • 什么是配置中心?(存储项目配置信息的一个服务)
  • 为什么要使用配置中心?(集中管理配置信息,动态发布配置信息)
  • 市场上有哪些主流的配置中心?Apollo(携程开源),nacos(阿里开源),Spring Cloud Config(Spring Cloud 全家桶成员)

因为阿里能抗得过双十一,所以我们照样还是用Nacos的服务配置中心

服务配置中心实践

1.添加依赖

因为我们会用消费方调用提供方,所以拿提供方sca-provider做实验,所以依赖加在提供方中

微服务004-Nacos服务配置中心应用_第1张图片

 2.修改配置文件信息

将项目中的application.yml的名字修改为bootstrap.yml配置文件(启动优先级最高),代码如下:

微服务004-Nacos服务配置中心应用_第2张图片

 3.新建Nacos配置

这里后缀为yml我已经改过来了

微服务004-Nacos服务配置中心应用_第3张图片

Data ID为 bootstrap.yml 中定义的spring.application.name的值相同(服务名-假如有多个服务一

般会创建多个配置实例,不同服务对应不同的配置实例)。后缀加不加yml都行

因为yml中已经定义好了。

4.配置中心动态发布测试

在controller类中写测试方法

微服务004-Nacos服务配置中心应用_第4张图片

微服务004-Nacos服务配置中心应用_第5张图片

微服务004-Nacos服务配置中心应用_第6张图片

 @slf4j 门面模式,自动创建log日志接口,等同于写了如下代码

 测试:

微服务004-Nacos服务配置中心应用_第7张图片

此时我们修改日志等级

微服务004-Nacos服务配置中心应用_第8张图片

此时可以看到我们不用重启服务器就能配置服务的日志输出级别,且能输出info级别以上的日志。

 微服务004-Nacos服务配置中心应用_第9张图片

 

5.命名空间 

举一反三:我们如果服务多个,且想要不同配置时,我们可以创建多个命名空间

根据Group更清晰的结构来管理我们的配置

微服务004-Nacos服务配置中心应用_第10张图片

 微服务004-Nacos服务配置中心应用_第11张图片

微服务004-Nacos服务配置中心应用_第12张图片

 微服务004-Nacos服务配置中心应用_第13张图片

 但是有两个命名空间,nacos会使用我们那个空间里的中心配置呢?这时候就要说到我们的命名空间ID了

微服务004-Nacos服务配置中心应用_第14张图片可见咱们的命名空间ID为   195a43f6-2b9f-4935-9c13-4249698404cc

6.编辑配置文件

微服务004-Nacos服务配置中心应用_第15张图片

 微服务004-Nacos服务配置中心应用_第16张图片

 微服务004-Nacos服务配置中心应用_第17张图片

 发布第二个中心配置

 微服务004-Nacos服务配置中心应用_第18张图片

微服务004-Nacos服务配置中心应用_第19张图片

 微服务004-Nacos服务配置中心应用_第20张图片

springboot修改默认日志配置

1.添加依赖

微服务004-Nacos服务配置中心应用_第21张图片

 因为咱们前面加的

  • spring-boot-starter-web依赖已经依赖logging了所以无需加

微服务004-Nacos服务配置中心应用_第22张图片

 

%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{50} - %msg%n:

%d表示当前时间,{yyyy-MM-dd HH:mm:ss}表示时间格式。

%thread表示线程名称。

%‐5level:日志级别从左显示5个字符宽度。

%logger{50} 表示logger名字最长50个字符,否则按照句点分割。

%msg:日志详细消息。

%n:换行。
 

你可能感兴趣的:(微服务,微服务,微服务架构)