当前位置: 首页 > news >正文

如何将你的项目服务配置托管到Nacos配置中心?一文讲透

目录

一.场景

二.体验传统项目内配置

1.在application.yml中,添加配置

2.编写测试接口,并通过@Value使用该配置

3.此时要想将配置修改成15,怎么办?

三.使用Nacos的配置中心功能

1.核心思路

2.具体操作

①在pom.xml配置文件中,添加 Nacos 配置中心依赖

②在application.yml中,添加配置中心的相关配置

③在Nacos配置中心,创建配置文件(注意要和上一步的配置文件中的那个文件名称一致)

④启动项目

⑤开启动态刷新(十分重要,不然即使Nacos的配置变了,项目也获取不到)

3.测试一下


一.场景

我们的单体springboot项目中,有一个定时任务,该定时任务的执行频率放到了application.yml配置文件中。这样的话,项目上线后,比如原本配置文件中配置的是5分钟执行一次,后来发现频率太快了,要改成15分钟。此时怎么办?

此时只能重新部署一下项目(即:一次停、发版、启操作)。这样就很麻烦啊,本来就改一下配置文件,但是却要整个项目重新发版,这样肯定是不合适的。


说白了就是,当前单体Spring Boot项目的定时任务频率配置在application.yml中,修改执行频率(如从5分钟改为15分钟)后需重新部署项目才能生效,这种仅调整配置文件却需要进行完整发版流程的方式操作繁琐且效率低下。

二.体验传统项目内配置

1.在application.yml中,添加配置

此时表示执行频率5(分钟/次)

2.编写测试接口,并通过@Value使用该配置

下面启动这个项目,调用该接口:

3.此时要想将配置修改成15,怎么办?

此时只能:

  • 停项目(上线的情况,该操作对应下线项目)
  • 改配置
  • 启项目(上线的情况,该操作对应重新发版)

此时将配置中的5改成15,再重启项目。

可见这种情况很麻烦。

三.使用Nacos的配置中心功能

1.核心思路

把代码里的配置文件(application.yml)剥离出来,放到 Nacos 服务器上统一管理,实现“修改配置后,不需要重启服务就能生效”。

2.具体操作

①在pom.xml配置文件中,添加 Nacos 配置中心依赖

<!-- 添加 Nacos 配置中心依赖 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>2023.0.1.0</version> <!-- 版本需与你的 Spring Boot 版本匹配 --> </dependency>

②在application.yml中,添加配置中心的相关配置

③在Nacos配置中心,创建配置文件(注意要和上一步的配置文件中的那个文件名称一致)

④启动项目

如下图,可见此时项目启动成功。

⑤开启动态刷新(十分重要,不然即使Nacos的配置变了,项目也获取不到)

3.测试一下

此时我们看这个频率还是快,想改成66。

此时我们就不需要重启项目了,因为已经弄好了Nacos配置中心,只需要该Nacos中的对应的配置文件即可。

再次调一下接口,看看是否得到了动态更新:

可见此时完美实现了Nacos的配置中心功能,配置也得到了动态刷新的功能。

以上就是本篇文章的全部内容,喜欢的话可以留个免费的关注呦~~~

http://www.cnnetsun.cn/news/2077214.html

相关文章:

  • 手把手教你用Docker Compose配置HedgeDoc,避开数据库连接和端口映射的那些坑
  • 为什么92%的嵌入式工程师在大模型移植中踩坑?:曝光未公开的C语言ABI对齐陷阱、栈溢出隐蔽路径与中断冲突根源
  • 【转载】高性能漏洞扫描器afog介绍及使用
  • OpenOmniBot:构建具备规划、执行与记忆能力的通用AI智能体框架
  • Metso Valmet A413052电路板模块
  • 3步掌握专业手机号码定位工具:高效查询电话号码真实位置
  • 2025_NIPS_UI-Genie: A Self-Improving Approach for Iteratively Boosting MLLM-based Mobile GUI Agents
  • 别让PICkit3.5+吃灰了!手把手教你激活硬件仿真,搞定485通讯调试难题
  • ESP32蓝牙音频终极指南:如何用简单代码实现专业级音乐接收器和发送器
  • SanityHarness:前端应用健康检查与健全性测试实践指南
  • 海康威视访客系统API避坑指南:从权限下发失败到动态二维码生成的5个常见问题
  • 小升初英语衔接轻创业,KISSABC 落地全拆解
  • 电影评论情感分析:从数据清洗到特征工程的完整指南
  • PatchTST论文精读与复现:手把手带你理解‘时间序列的64个词’
  • BERT文本嵌入技术详解与应用实践
  • WinDbg 命令总结
  • 别再手动算了!用Matlab的dec2hex/dec2bin函数搞定进制转换(附硬件寄存器操作实例)
  • STM32F405+SOEM调试EtherCAT电机,卡在Safe-OP状态?一个SMtype配置的坑我帮你踩了
  • Fish Tasks API 集成与使用指南
  • 低成本智能反射面(IRS)在6G毫米波通信中的设计与性能优化
  • 避开这3个大坑,你的AIGC自学之路能省下90%时间
  • DeepEar开源对话系统:从语音识别到多轮对话的完整实践指南
  • 港科夜闻|香港科大于THE亚洲大学排名2026位列第12位,彰显顶尖亚洲大学地位
  • 深度学习归一化技术:原理与TensorFlow实践
  • 保姆级教程:用IDEA插件Flowable BPMN visualizer画请假流程图,再配Spring Boot跑起来
  • iPhone上也能跑SQLmap?用A-Shell免越狱搭建移动渗透测试环境(保姆级教程)
  • AI入门数学基础:不用死磕公式,掌握这3点就够了(新手友好)
  • AI 深度研究工具的闭源隐形代价:Onyx + CrewAI + Voxtral 自托管栈的实战路径
  • 分布式量子计算中的多体纠缠与全局门技术
  • PyTorch单层神经网络实现CIFAR-10图像分类