1.说明

本文详细介绍配置中心客户端使用方法,
即Config Client到Config Server读取配置。
读取配置的方式有两种,
第一种是直接配置Configer Server的URL,
第二种是配置service-id,通过Eureka获取Configer Server的URL。
第一种方式请参考:
SpringCloud创建Config Client配置读取
下面基于这个创建好的Config Client,
进一步介绍第二种方式。

2.Config Server注册到Eureka

请参考:SpringCloud创建Eureka Client服务注册,
Config Server对应的application.yml:

server:
port: 9009 spring:
application:
name: config-server
cloud:
config:
server:
git:
uri: https://gitee.com/bugzeroman/spring-cloud-config.git
basedir: D:\Code\Learn\SpringCloud\config-dir
cloneOnStart: true eureka:
instance:
hostname: localhost
client:
service-url:
register-with-eureka: true
fetch-registry: true
defaultZone: http://localhost:7001/eureka

注意其中spring.application.name: config-server
把Config Server注册到Eureka后,
可以看到配置中心对外提供的服务名config-server。

3.Config Client配置Config Server服务名

首先Config Client也是要注册到Eureka,
Config Client对应的application.yml

server:
port: 8001 spring:
cloud:
config:
label: master
name: config-client-demo
profile: test
discovery:
enabled: true
service-id: config-server eureka:
instance:
hostname: localhost
client:
service-url:
register-with-eureka: true
fetch-registry: true
defaultZone: http://localhost:7001/eureka

注意spring.cloud.config.discovery.service-id: config-server,
已经不是原来的spring.cloud.config.uri: http://localhost:9009
这个配置项指定了配置中心的服务名,
这样就能从Eureka上面发现Config Server,
然后通过URL读取到对应的配置。

4.两种方式的选择

第一种方式直接配置Configer Server的URL,
那就不需要客户端注册到Eureka,
这个时候Eureka Client的配置就可以放到配置中心;

第二种方式配置Configer Server的service-id,
那就需要客户端注册到Eureka,
这个时候Eureka Client的配置不能放到配置中心,
客户端必须先注册到Eureka,
才能通过service-id找到真实的配置中心URL。

个人感觉第一种方式更简洁一下,
bootstrap.yml只需要配置Configer Server的URL,
Eureka Client的配置可以放到配置中心公用,
然后Configer Server的URL建议使用主机名,
在实际部署的时候通过映射把主机名和实际IP绑定。

SpringCloud创建Config Client通过Eureka访问Config的更多相关文章

  1. springCloud学习-分布式配置中心(Spring Cloud Config)

    1.简介 Spring Cloud Config :分布式配置中心,方便服务配置文件统一管理,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中.在spring cloud co ...

  2. SpringCloud创建Config Client配置读取

    1.说明 本文详细介绍配置中心客户端使用方法, 即Config Client到Config Server读取配置, 这里以创建Config Client服务为例, 基于已经创建好的Config Ser ...

  3. SpringCloud创建Eureka Client服务注册

    1.说明 本文详细介绍微服务注册到Eureka的方法, 即Eureka Client注册到Eureka Server, 这里用任意一个Spring Cloud服务为例, 比如下面已经创建好的Confi ...

  4. SpringCloud创建Config多客户端公共配置

    1.说明 基于已经创建好的Spring Cloud配置中心, 在配置中心仅保存一套配置文件, 多个客户端可以通过配置中心读取到相同的配置, 而不需要在每个客户端重复配置一遍, 下面以一个Config ...

  5. SpringCloud创建Config模块

    1.说明 本文详细介绍Spring Cloud创建Config模块的方法, 基于已经创建好的Spring Cloud父工程, 请参考SpringCloud创建项目父工程, 创建Config模块这个子工 ...

  6. SpringCloud Config Bus webhook 只能刷新config server 不能刷新config client

    在 https://github.com/spring-cloud/spring-cloud-bus/issues/124 中有提到 版本 SpringCloud:Greenwich.RC1 原因 由 ...

  7. SpringCloud创建Config读取本地配置

    1.说明 Config Server获取配置支持的方式很多, 包括Git仓库(github/gitee等),任何与JDBC兼容的数据库, Subversion,Hashicorp Vault,Cred ...

  8. 玩转Spring Cloud之配置中心(config server &config client)

     本文内容导航: 一.搭建配置服务中心(config server) 1.1.git方式 1.2.svn方式 1.3.本地文件方式 1.4.解决配置中包含中文内容返回乱码问题 二.搭建配置消费客户端( ...

  9. 跟我学SpringCloud | 第七篇:Spring Cloud Config 配置中心高可用和refresh

    SpringCloud系列教程 | 第七篇:Spring Cloud Config 配置中心高可用和refresh Springboot: 2.1.6.RELEASE SpringCloud: Gre ...

随机推荐

  1. Default Constructors

    A constructor without any arguments or with default value for every argument, is said to be default ...

  2. 6.Vue.js-条件与循环

    条件判断 v-if 条件判断使用 v-if 指令: <div id="app"> <p v-if="seen">现在你看到我了</ ...

  3. 远程调用RPC

    一.简介 RPC,就是Remote Procedure Call的简称呀,翻译成中文就是远程过程调用. 本地调用,就好比你现在在家里,你要想洗碗,那你直接把碗放进洗碗机,打开洗碗机开关就可以洗了.这就 ...

  4. 自动化集成:Jenkins管理工具详解

    前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Jenkins基础用法. 一.Jenkins安装 1. ...

  5. springboot项目WEB-INF 目录 jsp页面报404

    我是跟着<深入浅出 Spring Boot 2.x>这本书学习的,在"初识Spring MVC"章节中,搭建项目,然后访问jsp页面时报错:Path with &quo ...

  6. Vue3 全家桶,从 0 到 1 实战项目,新手有福了

    前端发展百花放,一技未熟百技出.未知何处去下手,关注小编胜百书. 我是前端人,专注分享前端内容! 本篇文章主要是,使用 vite 创建一个vue3 项目,实践 vie-router4 vuex4 结合 ...

  7. Linux(Centos) 设置显示vim行号

    1.修改vimrc文件 vim /etc/vimrc 2.在最后添加 set nu 如下图片所示 然后wq! 保存退出

  8. IDEA控制台中文显示乱码处理

    加入 -Dfile.encoding=UTF-8 以及

  9. Hibernate使用distinct返回不重复的数据,使用group by 进行分组

    //distinct使用 public List<String> distinctDutyDate() { String hql="select distinct(dutyDat ...

  10. C++使用C语言库函数创建文件夹

    概述 本文演示环境: win10 + vs2017 头文件 #include <io.h> #include <direct.h> 函数 下面的函数,从左至右依次检查文件夹是否 ...