- 注册中心
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
源码:
客户端主要是:NacosNamingService 定时发送请求作为临时节点保存在服务端
服务端主要是:InstanceController 接受请求,如果有集群把消息同步出去
- 配置中心
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
配置dataid
${prefix}-${spring.profile.active}.${file-extension}
-
prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
-
spring.profile.active 即为当前环境对应的 profile,详情可以参考 Spring Boot文档。 注意:当 spring.profile.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 {file-extension}
-
file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。
-
得到 data id为
${prefix}-${spring.profile.active}.${file-extension} ${spring-application-name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
动态刷新配置
@ConfigurationProperties(prefix = "user")
@Component
@Data
@RefreshScope
public class User {
private String userName;
}
网友评论