配置中心系列二:Nacos的接入与使用(配置中心+注册中心)

发布于:2022-12-02 ⋅ 阅读:(679) ⋅ 点赞:(0)

一、原理介绍与架构

nacos是一款优良的,集服务注册与发现和配置于一体的软件系统,即可以作为注册中心也可以作为配置中心。官方的文档介绍的非常好:https://nacos.io/zh-cn/docs/what-is-nacos.html
在这里插入图片描述

在这里插入图片描述
由于官方介绍非常完善,所以这里仅介绍具体的搭建和接入方式

二、Docker搭建集群版的Nacos

集群搭建的结构:
在这里插入图片描述
将使用nginx最为负载均衡和入口,通过mysql做数据持久化
详细内容和代码参看:https://gitee.com/lk0423/docker-compose/blob/master/Linux/nacos/run.md 中的nacos_cluster_v2.0.3的方式部署

三、springcloud接入nacos作为配置中心

1.依赖引入

 <!--nacos作为配置中心-->
 <!-- https://mvnrepository.com/artifact/com.alibaba.cloud/spring-cloud-starter-alibaba-nacos-config -->
 <dependency>
     <groupId>com.alibaba.cloud</groupId>
     <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
     <version>2.2.1.RELEASE</version>
 </dependency>

2.配置文件

bootstrap.yml

spring:
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:8880
        username: nacos
        password: nacos

3.使用

直接在controller中使用springboot提供的@Value注解即可。类似下面

    @Value("${env.name:default}")
    private String envName;

自动刷新

什么是自动刷新
nacos作为注册中心,修改了对应的配置文件后可以不需要重启对应的服务,可以直接生效。
如何开启自动刷新
直接在对应的controller类上提供@RefreshScope注解即可

四、springcloud接入nacos作为注册中心

1.依赖引入

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

2.配置

先在启动类中添加注解@EnableDiscoveryClient,开启服务的注册发现
然后在bootstrap.yml文件中的配置如下内容即可

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8880
        username: nacos
        password: nacos
本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到