No Data

nacos测试

原创  作者:斩雪碎光阴  发布于:2022年11月06日  阅读量:331
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
  分类:  标签:

测试环境:window10+jdk11+Nacos 2.1.1+springboot2.6.13+Spring Cloud2021.0.4+Spring Cloud Alibaba2021.0.4.0

作用:注册中心+配置中心


1.文档、资源

nacos文档:

https://nacos.io/zh-cn/docs/what-is-nacos.html

nacos下载:

https://github.com/alibaba/nacos/releases

Spring Cloud Alibaba中文文档:

https://github.com/alibaba/spring-cloud-alibaba/blob/2021.x/README-zh.md

Spring Boot、Spring Cloud、Spring Cloud Alibaba版本对应关系:

https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

官方示例中文文档:

https://github.com/alibaba/spring-cloud-alibaba/tree/2021.x/spring-cloud-alibaba-examples/nacos-example

每个示例中的readme-zh.md即中文文档

Nacos 2.1.1资源:

链接: https://pan.baidu.com/s/1h2xCEmZwtqUkHsd0j-vFkA

提取码:1111

jdk11+springboot2.6.13+Spring Cloud2021.0.4+Spring Cloud Alibaba2021.0.4.0+Nacos客户端:

链接: https://pan.baidu.com/s/1bpvafkEYfCLMeVCkCNJjhA

提取码:1111


2.安装、启动

windows环境下载压缩包、解压

cmd到bin目录下运行startup

单节点运行:

startup.cmd -m standalone

集群方式运行:

startup.cmd(1.4.1版本开始该脚本默认是以集群方式运行,以集群方式运行必须数据持久化到MySQL)


数据持久化到MySQL

修改nacos的conf目录下的application.properties

### If use MySQL as datasource:

spring.datasource.platform=mysql


### Count of DB:

db.num=1


### Connect URL of DB:

db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC

db.user.0=root

db.password.0=数据库密码


将nacos的conf目录下的nacos-mysql.sql导入上面配置的数据库中


3.集群搭建

数据持久化到MySQL

将所有nacos节点的conf目录下的cluster.conf.example文件拷贝一份并重命名为cluster.conf,然后在里面配置上所有集群节点的地址


#2022-10-15T18:38:29.179

# 所有nacos服务地址,包括自己

192.168.88.1:8848


重新启动所有的nacos节点(1.4.1之前的版本不包括1.4.1启动脚本默认单机运行,需加-m cluster参数)

访问任意节点可查看集群状态


4.注册中心

jdk版本:

    11

建springboot项目:

    org.springframework.boot

    spring-boot-starter-parent

    2.6.13

   

加入Spring Cloud、Spring Cloud Alibaba依赖

   

       

            org.springframework.cloud

            spring-cloud-dependencies

            2021.0.4

            pom

            import

       


       

            com.alibaba.cloud

            spring-cloud-alibaba-dependencies

            2021.0.4.0

            pom

            import

       

   

加注册中心依赖:

        com.alibaba.cloud

        spring-cloud-starter-alibaba-nacos-discovery

   

修改配置文件:

# 应用名称

spring.application.name=nai1

# 应用服务 WEB 访问端口

server.port=4001

#nacos地址

spring.cloud.nacos.config.server-addr=127.0.0.1:8848

启动项目后应在服务管理中可见


5.配置中心

加配置中心依赖:

        com.alibaba.cloud

        spring-cloud-starter-alibaba-nacos-config

   

增加依赖,用于加载bootstrap(否则springcloud config报错No spring.config.import set):

      org.springframework.cloud

      spring-cloud-starter-bootstrap


将application.properties改为bootstrap.properties增加用于测试:

jeecg.path.upload=path


增加Controller用于测试

@RestController

@RequestMapping("/nai1")

@RefreshScope

public class Nai1Controller {

@Value("${jeecg.path.upload}")

private String upLoadPath;

@RequestMapping(value = "/uploadPath")

public String uploadPath() {

    return upLoadPath;

}

}


在nacos配置列表增加配置文件:

Data ID:nai1.properties

Group:DEFAULT_GROUP

配置格式:Properties

配置内容:jeecg.path.upload=path2

发布


启动项目,访问http://localhost:4001/nai1/uploadPath,显示结果“path2”,配置文件获取成功

相关文章