一:nacos作为注册中心的步骤:

  1. 可以将nacos安装在docker中
    拉取镜像:docker pull nacos/nacos-server
    创建容器:docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server
    如果8848端口号被占用,ps -ef | gerp 8848查看是哪个资源占用了端口,如果并没有发现,则可以将映射端口号改成别的,例如18848:8848.
    启动容器:docker start nacos
    还可以配置自启动:docker update --restart=always nacos

  2. 引入依赖

<!--nacos的发现依赖-->
		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
		</dependency>
  1. 配置springboot的配置文件
spring:
  application:
    name: nacos-provider
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.188.129:28848
  1. 在主启动类上添加注解
    @EnableDiscoveryClient

二:nacos的配置中心,作用是

 在系统开发过程中,开发者通常会将一些需要变更的参数、变量等从代码中分离出来独立管理,以独立的配置文件的形式存在。目的是让静态的系统工件或者交付物(如 WAR,JAR 包等)更好地和实际的物理运行环境进行适配。配置管理一般包含在系统部署的过程中,由系统管理员或者运维人员完成。配置变更是调整系统运行时的行为的有效手段。

如果微服务架构中没有使用统一配置中心时,所存在的问题:

  • 配置文件分散在各个项目里,不方便维护
  • 配置内容安全与权限
  • 更新配置后,项目需要重启

nacos配置中心的作用:系统配置的集中管理(编辑、存储、分发)、动态更新不重启回滚配置(变更管理、历史版本管理、变更审计)等所有与配置相关的活动。

步骤:

  1. 先引入依赖
<!--nacos的配置中心的依赖-->
		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
		</dependency>
  1. 添加一个比application.yml文件优先级更高的配置文件
    bootstrap.yml
    在其中配置nacos配置中心的地址,还是指向nacos
spring:
  cloud:
    nacos:
      config:
        server-addr: ip:端口号
        name: nacos-provider   #naem 要指向需要改变的微服务的注册中心的名称

在这里插入图片描述

  1. 然后在控制层添加@RefreshScope
    此注解就可以根据配置文件中的改变,动态的改变,从配置文件获取的信息
    例如:在配置文件中自定义一个变量name: tom,有此注解以后,且前边配置合适,在在这里插入图片描述
    这里添加新的配置,就可以不用重启程序,动态改变属性值。

例如:在提供者的application.yml中创建一个myName: chen
在这里插入图片描述
在提供者中通过feign的调用,实现微服务的远程调用
在这里插入图片描述
然后配置完nacos的配置中心后
在这里插入图片描述
Data ID的命名规则:

${prefix}-${spring.profile.active}.${file-extension}
前缀-名称.扩展名
id唯一,每个配置的id都不能重复

就可以动态改变myName的值
加粗样式

后边再想改变就可以直接修改此文件就行在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐