Java分布式天气系统(3)
2019-07-18 本文已影响0人
谁家的猪
Spring Cloud Config
使用spring cloud config做统一配置中心
服务端
添加依赖
config server的group ID为org.springframework.cloud,artifact ID为spring-cloud-config-server
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
启用配置中心
- 添加注解@EnableConfigServer
- 添加注解@EnableDiscoveryClient,注册到Eureka
- 使用bootstrap.yml配置文件
spring:
application:
name: weather-config
# 配置中心
cloud:
config:
server:
native:
search-locations: classpath:/config/
profiles:
active: native
server:
port: 6000
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:8000/eureka/
-
使用本地的配置文件,将其他项目的配置文件放到config中
如图所示:
工程目录.png
config下存放其他服务的配置文件,它自身也要注册到eureka。
客户端
添加依赖
config server的group ID为org.springframework.cloud,artifact ID为spring-cloud-starter-config
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
启用注册功能
- 添加注解@EnableDiscoveryClient,注册到Eureka
- 使用bootstrap.yml配置文件
spring:
application:
name: weather-collect-amap-service
profiles:
active: dev
main:
allow-bean-definition-overriding: true
cloud:
config:
fail-fast: true
name: ${spring.application.name}
profile: ${spring.profiles.active}
discovery:
enabled: true
service-id: weather-config
server:
port: 9000
eureka:
client:
service-url:
defaultZone: http://127.0.0.1:8000/eureka/
profiles.active指定了需要激活后缀是dev的配置文件。
service-id指的是注册中心的名称。
客户端需要注册到eureka。
启动顺序
- 先启动Eureka注册中心
- 然后启动Config Server
- 最后启动Config Client