2、nacos
1、Nacos官方文档的说明已经很清晰了。
https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html
2、前提条件
https://nacos.io/zh-cn/docs/quick-start.html
3、下载nacos
https://github.com/alibaba/nacos/releases
我这里下载1.4.1版本
4、启动nacos
startup.cmd -m standalone
5、配置中心
5.1、单配置
5.1.1、创建项目结构如下

5.1.2、在guo中配置依赖管理
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
在项目 guo-config 添加依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${spring-cloud.alibaba}</version>
</dependency>
为了方便测试,添加web的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
这里需要注意的是几个版本的关系
请参考: https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E
我这里使用 Spring Cloud Hoxton.SR8,Spring Cloud Alibaba 2.2.5.RELEASE,Spring Boot 2.3.2.RELEASE

在项目guo-config添加配置文件bootstrap.properties
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.application.name=example
spring.cloud.nacos.config.file-extension=yml
prefix默认为spring.application.name的值,也可以通过配置项spring.cloud.nacos.config.prefix来配置。spring.profiles.active即为当前环境对应的 profile。 注意:当spring.profiles.active为空时,对应的连接符-也将不存在,dataId 的拼接格式变成${prefix}.${file-extension}file-exetension为配置内容的数据格式,可以通过配置项spring.cloud.nacos.config.file-extension来配置。目前只支持properties和yaml类型。
在nacos添加配置文件 example.yml, 这里我们没有配置 spring.cloud.nacos.config.prefix,spring.profiles.active 所以nacos配置文件名称就会变成 example.yml
编写配置测试类 @RefreshScope 注解将自动刷新配置
@RestController
@RequestMapping("/config")
@RefreshScope
public class ConfigController { @Value("${useLocalCache:false}")
private boolean useLocalCache; /**
* http://localhost:8080/config/get
*/
@RequestMapping("/get")
public boolean get() {
return useLocalCache;
}
}
启动
@SpringBootApplication
public class NacosConfigApplication { public static void main(String[] args) {
SpringApplication.run(NacosConfigApplication.class, args);
}
}
启动发现这样一行日志: Ignore the empty nacos configuration and get it based on dataId[example.yaml] & group[DEFAULT_GROUP]
表示没有找到配置文件 example.yaml,查看配置文件,发现我们配置的文件后缀为 yaml ,而我们在nacos中的配置文件为 example.yml 所以无法找到naocs配置。修改 bootstrap.properties 中 spring.cloud.nacos.config.file-extension=yml 后重启正常。
调用 http://localhost:8080/config/get 返回结果 false
修改nacos配置【useLocalCache: true】重新访问结果 true
5.2、多配置 编写配置文件 bootstrap.yml
spring:
application:
name: example
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
#第一种配置方式
ext-config:
- data-id: app.properties
group: DEFAULT_GROUP
# refresh: true
- data-id: jdbc.properties
group: DEFAULT_GROUP
- data-id: redis.properties
group: DEFAULT_GROUP
#第二种配置方式,不刷新
shared-dataids: yiwuxia.properties
#第二种配置方式,自动刷新配置
refreshable-dataids: test-one.properties, test-two.properties
2、nacos的更多相关文章
- SpringCloud-动态配置变化监控-获取变化(支持Config、Nacos)
SpringCloud-动态配置变化监控-获取变化(支持Config.Nacos) qq交流群: 812321371 微信交流群: MercyYao 简介 配置中心有原生的 SpringCloud C ...
- consul、eureka、nacos对比
consul.eureka.nacos对比 配置中心 eureka 不支持 consul 支持 但用起来偏麻烦,不太符合springBoot框架的命名风格,支持动态刷新 nacos 支持 用起来简单, ...
- Spring Cloud Alibaba生态探索:Dubbo、Nacos及Sentinel的完美结合
@ 目录 背景 一.项目框架 1.1 采用IDEA和Maven多模块进行项目搭建 1.2 模块管理及版本管理 二.微服务公共接口 2.1 定义一个公共接口Api 2.2 pom.xml 2.3 Goo ...
- Spring Cloud Config、Apollo、Nacos配置中心选型及对比
Spring Cloud Config.Apollo.Nacos配置中心选型及对比 1.Nacos 1.1 Nacos主要提供以下四大功能 2.Spring Cloud Config 3.Apollo ...
- 保姆教程系列二、Nacos实现注册中心
前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 上篇我们介绍到 保姆教程系列一.Linux搭建Nacos 注册中心原理 一.环境准备 Java版本:1.8+ (Linux ce ...
- 学习一下 SpringCloud (二)-- 服务注册中心 Eureka、Zookeeper、Consul、Nacos
(1) 相关博文地址: 学习一下 SpringCloud (一)-- 从单体架构到微服务架构.代码拆分(maven 聚合): https://www.cnblogs.com/l-y-h/p/14105 ...
- Linux 设置开机自启动脚本(ES、MySQL、Nacos、Nginx)
/etc/rc.d/init.d 中文件会在 Linux 系统各项服务都启动完毕之后再被运行 cd /etc/rc.d/init.d:新建xxx.sh文件. chmod +x xxx.sh,赋予可执行 ...
- 学习一下 SpringCloud (五)-- 配置中心 Config、消息总线 Bus、链路追踪 Sleuth、配置中心 Nacos
(1) 相关博文地址: 学习一下 SpringCloud (一)-- 从单体架构到微服务架构.代码拆分(maven 聚合): https://www.cnblogs.com/l-y-h/p/14105 ...
- 学习一下 SpringCloud (六)-- 注册中心与配置中心 Nacos、网关 Gateway
(1) 相关博文地址: 学习一下 SpringCloud (一)-- 从单体架构到微服务架构.代码拆分(maven 聚合): https://www.cnblogs.com/l-y-h/p/14105 ...
随机推荐
- IDEA 怎么统计项目代码行数
引言 IDEA 统计项目代码行数,主要是使用 Statistic 插件来统计 第一步 点击 File->Settings,如下图所示: 第二步 点击 install 安装 Statistic 插 ...
- maven工具使用json-lib时,JSONArray.fromObject()不能执行的解决方案
前端代码我就不展示了 ,下面说明下我遇到问题的情况,如果不想看可以直接划到黄色字体部分直接找解决方法哦~~(相关jar包我会放在云中,想要的自己下载哦,链接在视频最下面!!) 我的pom文件,如下,导 ...
- Django(41)详解异步任务框架Celery
celery介绍 Celery是由Python开发.简单.灵活.可靠的分布式任务队列,是一个处理异步任务的框架,其本质是生产者消费者模型,生产者发送任务到消息队列,消费者负责处理任务.Celery ...
- Django框架中logging的使用
Django框架中logging的使用 日志是我们在项目开发中必不可少的一个环节,Python中内置的logging已经足够优秀到可以直接在项目中使用. 本文介绍了如何在DJango项目中配置日志. ...
- Docker学习(6) 获取和推送镜像
查找镜像 拉取镜像 推送镜像 总结
- Docker学习(1) 初识
Docker的使用场景 1 使用Docker容器开发,测试,部署服务 2 创建隔离的运行环境 3 搭建测试环境 4 构建多用户的平台及服务(PaaS)基础设施 5 提供软件即服务(SaaS)应用程序 ...
- Amazon SageMaker和NVIDIA NGC加速AI和ML工作流
Amazon SageMaker和NVIDIA NGC加速AI和ML工作流 从自动驾驶汽车到药物发现,人工智能正成为主流,并迅速渗透到每个行业.但是,开发和部署AI应用程序是一项具有挑战性的工作.该过 ...
- 记 Ant Designer Vue 2.0.1 layout 丢失样式类名问题分析
现象 <a-layout-sider /> 渲染到页面上会变成 <section class="undefined-has-sider"> 丢失了 layo ...
- SpringBoot数据访问(二) SpringBoot整合JPA
JPA简介 Spring Data JPA是Spring Data大家族的一部分,它可以轻松实现基于JPA的存储库.该模块用于增强支持基于JPA的数据访问层,它使我们可以更加容易地构建使用数据访问技术 ...
- 【模拟8.01】string(线段树)
因为题中只有a-z,所以区间中大量字母都是重复的,我们不妨利用桶的性质. 开一棵树,里面维护当前区间内的相同元素,若区间内元素不同,则为零 每次升序操作就先查询一遍区间,用桶将每个区间的a-z元素统计 ...