一、配置中心(配置管理)
配置中心是一种集中化管理配置的服务。它的主要作用包括集中管理配置信息,将不同服务的配置信息集中存储和管理;支持动态更新配置,通过操作界面或 API 无需重启服务即可应用最新配置信息;实现配置信息共享,不同服务实例可以共享同一套配置信息;提供配置信息的安全管理和权限控制功能;支持配置版本管理和历史记录,方便信息追溯。通过这些功能,配置中心帮助开发者简化配置管理,提高系统的灵活性和安全性。
1. 创建配置信息(新建配置)
在 配置管理.配置列表 点击创建配置.
输入下图信息.
参数说明:
- 命名空间: Nacos 基于命名空间(Namespace)帮助用户逻辑隔离多个命名空间,这可以帮助用户更好的管理测试、预发、生产等多环境服务和配置,让每个环境的同一个配置(如数据库数据源)可以定义不同的值。
- Data ID: 配置的唯一标识,用于查找配置文件。
- Group: 配置分组,用于设置小组信息,例如 DEV_GROUP 开发小组,TEST_GROUP 测试小组。
然后点击发布, 就新建了配置, 跳转到配置管理页.
以下是Nacos配置中心部分的功能展示.
如果需要修改, 可以点击编辑.
点击发布可以看到修改前后的比较, 绿色为新增, 红色为删除.
假如不小心修改错了, Nacos支持历史版本的回滚, 所以可以进行回滚.
点击历史版本, 可以看到刚才所做的两个版本.
可以点击回滚进行回滚, 还可以查看当前版本和所点历史版本的比较.
2. Spring Boot 使用配置中心(实现配置中心的读取)
示例版本:
- 开发环境: JDK 17+
- Spring Boot 3.x (该版本最低要求JDK版本为JDK17+)
- Spring Cloud 2022.0.0/Spring Cloud Alibaba 2022.0.0.0
接下来我们实现读取前文配置的myconfig内容.
2.1 创建项目
2.2 设置Nacos连接信息
在application.properties中我们可以看到Alibaba已经给我们设置好了相关模板.
我们需要修改一些必要的配置, 如下图已经标出.
博主修改的配置信息如下:
spring.cloud.nacos.config.server-addr=localhost:8848
spring.config.import=nacos:nacos-config-example
2.3 读取配置中心的配置信息
创建TestController.
package com.example.demo.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@Value("${myconfig}")
private String myconfig;
@RequestMapping("/getconfig")
public String getMyconfig() {
return myconfig;
}
}
运行之后我们直接访问, 可以看到我们已经读取到了配置信息.