1.前言
当服务非常多的时候,一处配置修改,我们就要将所有相同服务的配置修改,这样的话就是非常繁琐的,我们引入配置中心,一处修改,处处生效。
2.创建blog_config模块
(1)添加pom文件
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<!-- actuator监控信息完善 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>
(2)添加主配置类
@SpringBootApplication
@EnableConfigServer
@EnableDiscoveryClient
public class BlogConfig {
public static void main(String[] args) {
SpringApplication.run(BlogConfig.class, args);
}
}
(3)application.properties文件
server.port=6001
spring.application.name=blog-config
eureka.client.service-url.defaultZone=http://localhost:7001/eureka/
eureka.instance.prefer-ip-address=true
spring.cloud.config.server.git.uri=https://github.com/sustly/blog_config.git
spring.cloud.config.label=master
spring.cloud.config.server.git.search-paths=blog_config
management.endpoints.enabled-by-default=true
management.endpoint.health.show-details=always
#management.endpoints.web.exposure.include=refresh,info,health
management.endpoints.web.exposure.include=*
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
注意:这里使用的github的方式,拉取配配置。
3.其他模块配置修改
(1)pom
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
(2)application.properties
spring.cloud.config.label=master
spring.cloud.config.name=blog
spring.cloud.config.profile=dev
spring.cloud.config.uri=http://localhost:6001
spring.rabbitmq.host=localhost
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
注意:config.uri是配置中心地址,label是github分支,profile是文件名-后面,name是文件名-前面
启动项目后:修改github
发送curl -X POST "http://配置中心地址:端口/actuator/bus-refresh"即可全部更新配置