本文共 1318 字,大约阅读时间需要 4 分钟。
分布式配置中心组件spring cloud config ,config-client取application.properties中的spring.cloud.config.uri=http://localhost:18888/
读取不到,取成了默认的8888端口,导致读取不到远程地址中的配置文件,把配置放到bootstrap.properties文件中就可以了。
主要原因是config-client需要读取bootstrap.properties中的配置,进而读取系统文件配置
下面是bootstrap与application的简单区别
bootstrap.yml 和application.yml 都可以用来配置参数
bootstrap.yml可以理解成系统级别的一些参数配置,这些参数一般是不会变动的
application.yml 可以用来定义应用级别的
bootstrap中配置一些系统参数,如果应用参数配置里面,很多不识别
如下可以配置到bootstrap中:
##application configspring.cloud.config.name=@project.name@-${ platform_type}#spring.cloud.config.label=@project.version@#application.name=@project.name@-${ platform_type}application.version=1.0.1-SNAPSHOT#spring.application.name=${ application.name}spring.profiles.active=${ platform_type}spring.cloud.config.username=${ config_user}spring.cloud.config.password=${ config_password}spring.cloud.config.discovery.enabled=truespring.cloud.config.discovery.serviceId=config-server#eureka servereureka.instance.prefer-ip-address=trueeureka.client.service-url.defaultZone=${ eureka_uri}eureka.instance.instance-id=${ spring.cloud.client.ipAddress}:${ application.name}:${ server.port}
而像下面的Kafka的serializer指定Byte类型的序列化,放到bootstrap配置中,Kafka是识别不了的,只能放到application中
spring:
kafka:
producer: value-serializer: org.apache.kafka.common.serialization.ByteArraySerializer
转载地址:http://xhadi.baihongyu.com/