Nacos使用

一、nacos介绍

1.动态配置

配置文件发布在nacos服务上,在配置变更时不需要重新部署项目

2.服务的发现与管理

服务生产者和消费者,生产者provider,消费者consumer,注册中心nacos,生产者和消 费者都会去nacos中注册,nacos匹配成功后就可以正常调用

3.动态dns

二、软件安装

链接: https://pan.baidu.com/s/1Wcp87AwfLgta3yuUEG68mg?pwd=wx9c 提取码: wx9c

安装后打开startup.cmd就可以使用

默认地址为localhost:8848/nacos

账号密码均为nacos

三、动态配置

1.Nacos配置

Nacos分为namespace,group,dataId

Namespace一般常用于设置环境(例dev,test,pro)

group对应各个项目(例xinyang,siping)

dataId对应不同业务项目(例river,main,project)

1.创建命名空间

 2.创建dataId和group

 

2.代码中使用 

 引入依赖

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

注意:springboot2.4.x以上的版本,需要加入下面的依赖,支持对bootstrap.yml的加载

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
    <version>3.1.0</version>
</dependency>

创建bootstrap.yml文件

spring:
  profiles:
    active: dev
  cloud:
    nacos:
      username: nacos #账号
      password: nacos #密码
      server-addr: 127.0.0.1:8848  #nacos服务地址
      discovery: #集群服务信息
        cluster-name: jiqun #集群名称
        namespace: ${spring.profiles.active} #注册的服务命名空间名称 dev
        group: ${spring.application.name} #注册的服务的分组名称 demo
      config: #配置信息
        namespace: ${spring.profiles.active}   #我们在nacos中创建的空间名称
        group: ${spring.application.name}   #nacos配置文件所选择的group
        prefix: ${spring.application.name} #项目前缀
        file-extension: yaml  #读取nacos配置文件后缀
        refresh-enabled: true  #修改后自动加载
        timeout: 3000

启动项目成功,使用了nacos中的端口设置

 3.加载顺序

配置文件的加载顺序

1.项目里的执行顺序

        spring-boot-starter-parent里配置的加载顺序是yml,yaml,properties

2.项目和nacos配合使用

        1.先执行项目里的配置文件

                bootstrap.yml>bootstrap.yaml>bootstrap.properties>

        2.执行nacos里的配置文件

               nacos里的配置文件执行顺序

                ${spring.application.name}-${profile}.${file-extension:properties}

                ${spring.application.name}.${file-extension:properties}

                ${spring.application.name}

                extensionConfigs nacos.yml

        3.项目里的配置文件

                application.yml>application.yaml>application.properties

四、nacos配置文件介绍

1.Nacos配置

启动单个nacos时设置为standalone,需要使用集群时需要改为cluster

 2.Nacos和数据库

 Nacos里内置了小型的数据库,如果是大型的配置环境需要将配置文件里的数据库打开

Server.port是当前的nacos端口号,db.num表示使用了一个数据库,可以配置多个数据库

按db.url.0,db.url.1设置多个保证高可用

 数据库表脚本

 

 

3.Nacos集群配置

打开nacos.inetutils.ip-address

修改cluster.conf.example文件 

 注意:修改完成后将后缀.example去掉,不然会启动报错

 修改完成后,需要将bin目录下的启动文件改为集群模式cluster

 保存配置文件后,将nacos文件复制3份,分别修改复制出的nacos文件里,conf下的application.properties文件里的端口为8849和8850

 分别启动成功

 修改项目里的配置文件

 

 

 

 测试nacos集群

 

@RestController
@RequestMapping("/nacos")
public class TestController {

    @Value("${user.name}")
    private String name;

    @Value("${user.age}")
    private String age;

    @GetMapping("/get")
    public String getData() {
        return name + ":" + age;
    }

}

 

 关掉2个nacos后还可以正常访问

 注意:修改配置文件后,重启项目未生效,可以重启nacos服务

4.Service集群配置

 要求服务名称一样,创建2个服务,设置不同的端口

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值