第四节springcloudconfig多实例集
Config Server 可以从本地仓库读取配置⽂件,也可以从远处Git 仓库读取。本地仓库是指将所有的配置⽂件统⼀写在Config Server ⼯程⽬录下。Config Sever 暴露HttpAPI 接⼝, ConfigClient 通过调⽤Config Sever 的H即API 接⼝来读取配置⽂件。
⼀、构建Config Server
1. 在Config-server⼯程l⽂件增加如下引⽤:(⽗POM⽂件⾃⼰注意查看)
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-config-server</artifactId>
</dependency>
2. 在ConfigServerApplication类上新增@EnableConfigServer注解,开启config server功能。
3. 配置l⽂件
spring:
cloud:
config:
server:
native:
search-locations: classpath:/shared
profiles:
active: native
application:
name: config-server
server:
教师节写给老师的信
port: 8769
#配置说明:
#1. spring.profiles.active=native ⽤来配置Config Server从本地读取配置⽂件
#2. fig.server.native.search-locations指定配置⽂件路径
4. 在resources/shared⽬录下新建l配置⽂件,配置数据如下:
server:
port: 8762
foo: foo version 1
读取配置文件失败⼆、构建Config client
1.在config-client⼯程的l⽂件中新增如下引⽤:(⽗POM⽂件⾃⼰注意查看)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
2.在config-client的配置⽂件l中做配置。【注意: l相对于appliation具有优先的执⾏顺序。】
spring:
application:
name: config-client
cloud:
config:
uri: localhost:8769
fail-fast: true
profiles:
鸡蛋糕的做法active: dev
#配置说明:
# fig.url 指定configServer的访问url
# fig.fail-fast 表⽰如果没有读取成功,则执⾏快速失败
# sprisng.profiles.active表⽰读取dev环境的配置⽂件
# sprisng.profiles.active表⽰读取dev环境的配置⽂件
立夏的诗# 所有的配置加起来,config-client就会去读config-server/resource/shared⽬录下⾯的 l⽂件
3.在ConfigClientApplication类中写⼀个API接⼝,读取配置⽂件foo变量,并通过API返回。
4.启动config-server⼯程,启动config-client⼯程。启动config-client⼯程会在控制台的⽇志中发现config-client向url为
localhost:8769的Config Server读取了配置⽂件,最终config-client程序启动的端⼝为8762,8762端⼝是在
config-server/resource/shared⽬录中的l⽂件中配置的。由此可以见config-client向config-server中成功读取配置⽂件。
⽇志内容如: Fetching config from server at : localhost:8769
5. 访问localhost:8762/foo,浏览器显⽰:
foo version 1
⼀、Eureka_server
eureka:
instance:
hostname: peer1    # eureka服务端的实⼒名称
client:
fetch-registry: false  # false表⽰⾃⼰就是注册中⼼。我的职责就是维护服务实例,并不需要去检索服务
四字成语大全及解释register-with-eureka: false  # false表⽰⾃⼰不需要向注册中⼼注册⾃⼰
service-url:
defaultZone: ${eureka.instance.hostname}:${server.port}/eureka/
server:
port: 8761    # 设置与Eureka Server交互的地址查询服务和注册服务都需要依赖这个地址(单机版)
#defaultZone: 127.0.0.1:7001/eureka/
⼆、 github版本 去github上读取配置⽂件
spring:
cloud:
config:
server:
git:
uri: github/bluewelkin/springcloudcon
searchPaths: config
username:
password:
label: master
application:
name: config-server
server:
port: 8769
eureka:
client:
serviceUrl:
defaultZone: localhost:8761/eureka
开启两个实例 8768 、8769
三、eureka_client
spring:
application:
name: config-client
cloud:
config:
#uri: localhost:8769
fail-fast: true
discovery:
enabled: true
陈道明女儿成长照曝光serviceId: config-server
label: master
profiles:
active: dev
读取config-server ⾥⾯的配置⽂件不断运⾏config-client
发现控制台轮流 8768 8769