博客
关于我
【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 Xtrabackup 安装、备份、恢复
查看>>
mysql [Err] 1436 - Thread stack overrun: 129464 bytes used of a 286720 byte stack, and 160000 bytes
查看>>
MySQL _ MySQL常用操作
查看>>
MySQL – 导出数据成csv
查看>>
MySQL —— 在CentOS9下安装MySQL
查看>>
mysql 不区分大小写
查看>>
mysql 两列互转
查看>>
MySQL 中开启二进制日志(Binlog)
查看>>
MySQL 中文问题
查看>>
MySQL 中日志的面试题总结
查看>>
MySQL 中随机抽样:order by rand limit 的替代方案
查看>>
MySQL 为什么需要两阶段提交?
查看>>
mysql 为某个字段的值加前缀、去掉前缀
查看>>
mysql 主从 lock_mysql 主从同步权限mysql 行锁的实现
查看>>
mysql 主从互备份_mysql互为主从实战设置详解及自动化备份(Centos7.2)
查看>>
mysql 主键重复则覆盖_数据库主键不能重复
查看>>
Mysql 优化 or
查看>>
mysql 优化器 key_mysql – 选择*和查询优化器
查看>>
MySQL 优化:Explain 执行计划详解
查看>>
Mysql 会导致锁表的语法
查看>>