Spring Cloud全解析:配置中心之解决configserver单点问题

程序浅谈 后端 2024-08-29

Spring Cloud全解析:配置中心之解决configserver单点问题

解决configserver单点问题

之前我们在config的客户端配置configserver的地址是yaml

代码解读
复制代码
spring: application: name: micro-service-config-client cloud: config: name: micro-service-config-client #github上的资源文件名,对应上述的application,该值默认为${spring.application.name}的值 profile: dev # 环境 label: master # git分支 uri: http://localhost:7010 #spring cloud 服务端地址

但是如果该configserver挂掉了,那就无法获取最新的配置了,微服务就出现了configserver的单点问题,那么如何避免configserver单点呢?

SpringCloudConfig早就想到了这个问题了,微服务可以使用注册中心来防止单点故障,那么configServer也是可以的

首先将configServer注册到eureka注册中心上yaml

代码解读
复制代码
# eureka 配置 eureka: client: # 注册到eureka server注册中心 service-url: defaultZone: http://localhost:7001/eureka # eureka server提供的注册地址 instance: instance-id: springcloud2-springcloudconfig # 服务实例名称,在eureka server页面中的status列中 prefer-ip-address: true # 访问路径显示ip

然后在configClient端配置configServer地址的时候不使用uri的方式,而使用serviceIdyaml

代码解读
复制代码
spring: application: name: springcloud2-config-client cloud: config: name: springcloud2-config #github上的资源文件名 profile: dev # 环境 label: master # git分支 # uri: http://localhost:7010 #spring cloud 服务端地址 discovery: service-id: springcloud2-springcloudconfig # 可以使用eureka来访问到对应的configserver微服务,防止configserver单点问题 enabled: true

当然,configClient也要注册到注册中心上,不然是肯定找不到对应的configServer的

转载来源:https://juejin.cn/post/7406643531699027979

Apipost 私有化火热进行中

评论