【二十三】搭建SpringCloud项目六(Config)配置中心动态刷新

简介: 【二十三】搭建SpringCloud项目六(Config)配置中心动态刷新


上一章节整合了Config配置中心,已经能够实现通过git统一配置微服务项目的配置,但是存在一个问题,如果单纯直接修改git上的配置文件,对象项目而言是没有动态更新的。

1、测试: (看不懂的看上一章,此章节是紧跟着上一章节进行的测试)

启动,

注意顺序,先启动注册中心,再启动config,最后启动消费服务(不然product服务会报错,因为他的配置是通过config服务去获取的,再又config从git获取)。

如图:启动的服务。

git上配置文件的内容,调用postman请求

返回2222222222.

修改git上的配置文件,再次请求

说明并没有动态改变。

需要重启product服务(配置使用服务),才会生效。

2、改造动态刷新

1、添加spring-boot-starter-actuator依赖(在配置使用服务,此处是product服务)

2、在Controller层添加注解@RefreshScope

使用该注解的类,会在配置中心配置刷新的时候,扫描该类中使用到的配置里面的值,并将刷新后新的值赋给他。

3、修改yml文件

框选部分为新增部分。

4、需要手动执行一句请求。

http://localhost:8488/actuator/refresh

注意:上面的修改都是在消费方的操作(product服务),第四步的端口号是product服务的端口号,别搞错了。

5、测试

git上当前是6666

请求postman,结果如下:

修改git上数据为777

执行上面说的接口

重新请求测试接口

刷新成功,这样就实现了config的动态刷新。

目录
相关文章
|
2月前
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
本文讨论了在配置Vite项目时遇到的`vite.defineConfig is not defined`错误,这通常是由于缺少必要的导入语句导致的。文章还涉及了如何创建最新版本的Vite项目以及如何处理`configEnv is not defined`的问题。
107 3
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
|
2月前
|
负载均衡 Java Nacos
SpringCloud基础2——Nacos配置、Feign、Gateway
nacos配置管理、Feign远程调用、Gateway服务网关
SpringCloud基础2——Nacos配置、Feign、Gateway
|
2月前
|
Java 开发工具 对象存储
简化配置管理:Spring Cloud Config与Netflix OSS中的动态配置解决方案
简化配置管理:Spring Cloud Config与Netflix OSS中的动态配置解决方案
46 2
|
3月前
|
Cloud Native Java Nacos
Spring Cloud Config、Apollo、Nacos和Archaius对比
这篇文章对比了Spring Cloud Config、Apollo、Nacos和Archaius这四种配置中心的适应场景、优缺点。文中讨论了它们的功能特点,例如Spring Cloud Config的集中化配置管理和动态刷新能力,Apollo的实时配置推送和权限治理,Nacos的服务发现和管理功能,以及Archaius的动态配置更新能力。文章指出选择配置中心应根据项目需求和架构来决定,并提供了一个对比图来帮助读者更直观地理解这些工具的差异。
92 1
Spring Cloud Config、Apollo、Nacos和Archaius对比
|
1月前
|
负载均衡 Java API
【Spring Cloud生态】Spring Cloud Gateway基本配置
【Spring Cloud生态】Spring Cloud Gateway基本配置
37 0
|
3月前
|
Java 微服务 Spring
Spring Cloud全解析:配置中心之解决configserver单点问题
但是如果该configserver挂掉了,那就无法获取最新的配置了,微服务就出现了configserver的单点问题,那么如何避免configserver单点呢?
|
3月前
|
JavaScript Java Python
【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容
【Azure 应用服务】在Azure App Service for Windows 中部署Java/NodeJS/Python项目时,web.config的配置模板内容
|
2月前
|
SpringCloudAlibaba API 开发者
新版-SpringCloud+SpringCloud Alibaba
新版-SpringCloud+SpringCloud Alibaba
|
3月前
|
资源调度 Java 调度
Spring Cloud Alibaba 集成分布式定时任务调度功能
定时任务在企业应用中至关重要,常用于异步数据处理、自动化运维等场景。在单体应用中,利用Java的`java.util.Timer`或Spring的`@Scheduled`即可轻松实现。然而,进入微服务架构后,任务可能因多节点并发执行而重复。Spring Cloud Alibaba为此发布了Scheduling模块,提供轻量级、高可用的分布式定时任务解决方案,支持防重复执行、分片运行等功能,并可通过`spring-cloud-starter-alibaba-schedulerx`快速集成。用户可选择基于阿里云SchedulerX托管服务或采用本地开源方案(如ShedLock)
124 1
|
1月前
|
JSON SpringCloudAlibaba Java
Springcloud Alibaba + jdk17+nacos 项目实践
本文基于 `Springcloud Alibaba + JDK17 + Nacos2.x` 介绍了一个微服务项目的搭建过程,包括项目依赖、配置文件、开发实践中的新特性(如文本块、NPE增强、模式匹配)以及常见的问题和解决方案。通过本文,读者可以了解如何高效地搭建和开发微服务项目,并解决一些常见的开发难题。项目代码已上传至 Gitee,欢迎交流学习。
128 1
Springcloud Alibaba + jdk17+nacos 项目实践