博客
关于我
【SpringBoot深入浅出系列】SpringBoot整合Nacos2.0配置管理及服务发现
阅读量:612 次
发布时间:2019-03-12

本文共 2442 字,大约阅读时间需要 8 分钟。

Nacos配置管理和服务发现教程

一、下载

下载Nacos并启动Nacos Server。安装完成后,按照以下步骤配置并运行应用。

二、启动配置管理

添加依赖

在项目依赖中添加Nacos配置管理的Spring Boot Starter依赖。注意:0.2.10版本对应Spring Boot 2.2.4 RELEASE版本。

com.alibaba.boot
nacos-config-spring-boot-starter
0.2.10

配置Nacos Server地址

application.yml中添加Nacos Server地址配置。

nacos:
config:
server-addr: 127.0.0.1:8848

使用NacosPropertySource加载配置

在主类中使用@NacosPropertySource注解加载指定dataId的配置源,并启用自动刷新。

@SpringBootApplication
@NacosPropertySource(dataId = "nacostest", autoRefreshed = true)
public class TengxunsmsApplication {
public static void main(String[] args) {
SpringApplication.run(TengxunsmsApplication.class, args);
}
}

注入属性值

在控制器中使用@NacosValue注解注入属性值,并开启自动刷新。

@Controller
@RequestMapping("config")
public class ConfigController {
@NacosValue(value = "${userLocalCache:false}", autoRefreshed = true)
private boolean userLocalCache;
@RequestMapping(value = "/get", method = GET)
@ResponseBody
public boolean get() {
return userLocalCache;
}
}

启动应用

运行TengxunsmsApplication类。

测试

1. 在命令行执行

curl http://localhost:8080/config/get

返回false。

2. 使用Nacos Open API发布配置

发布dataId为nacostest的配置:

curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacostest&group=DEFAULT_GROUP&content=userLocalCache=true"

再次调用:

curl http://localhost:8080/config/get

返回true。

三、启动服务发现

添加依赖

在项目依赖中添加Nacos服务发现的Spring Boot Starter依赖。

com.alibaba.boot
nacos-discovery-spring-boot-starter
0.2.10

配置Nacos Server地址

application.yml中添加Nacos Server地址配置。

nacos:
discovery:
server-addr: 127.0.0.1:8848

注入Nacos服务

在控制器中使用@NacosInjected注解注入Nacos的NamingService实例。

@Controller
@RequestMapping("discovery")
public class DiscoveryController {
@NacosInjected
private NamingService namingService;
@RequestMapping(value = "/get", method = GET)
@ResponseBody
public List
get(@RequestParam String serviceName) throws NacosException {
return namingService.getAllInstances(serviceName);
}
}

启动应用

运行TengxunsmsApplication类。

测试

1. 在命令行执行

curl http://localhost:8080/discovery/get?serviceName=nacos-test

返回空列表。

2. 使用Nacos Open API注册服务

注册名称为nacos-test的服务:

curl -X POST "http://127.0.0.1:8848/nacos/v1/ns/instance?port=8080&healthy=true&ip=127.0.0.1&weight=1.0&serviceName=nacos-test&encoding=GBK"

再次调用:

curl http://localhost:8080/discovery/get?serviceName=nacos-test

返回服务实例信息。

转载地址:http://pkixz.baihongyu.com/

你可能感兴趣的文章
MySQL 在控制台插入数据时,中文乱码问题的解决
查看>>
MySQL 基础架构
查看>>
MySQL 基础模块的面试题总结
查看>>
MySQL 处理插入重主键唯一键重复值办法
查看>>
MySQL 备份 Xtrabackup
查看>>
mysql 复杂查询_mysql中复杂查询
查看>>
mYSQL 外键约束
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>
mysql 字段区分大小写
查看>>
mysql 字段合并问题(group_concat)
查看>>
mysql 字段类型类型
查看>>
MySQL 字符串截取函数,字段截取,字符串截取
查看>>
MySQL 存储引擎
查看>>
mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
查看>>
MySQL 存储过程参数:in、out、inout
查看>>