spring boot 集成config


git地址
https://github.com/a18792721831/studySpringCloud.git

1. config server(本地)

1.1 创建

在这里插入图片描述

1.2 配置(config server本身的)

在这里插入图片描述
特别注意,需要在config server中配置profiles是native否则,config server默认从github仓库读取,启动时会异常:
在这里插入图片描述

1.3 配置(本地对于config client的)

在这里插入图片描述
注意文件夹的名字在1.2中指定的。
同时这个配置文件的名字是config client的服务名字加标志。
这个标志是标志是什么环境(开发,测试,生产等)
可以随意填写。但是建议使用大家都明白的名字。

1.4 注解

在这里插入图片描述

2. config client

2.1 创建

在这里插入图片描述

2.2 配置

在这里插入图片描述
注意配置文件名。
bootstrap.yml优先于application配置读取。
指定了config client的服务名字;
制定了config server的地址;
开启了读取失败时,快速失败终止;
然后制定了读取的标志。

2.3 验证快速失败

只启动config client,不启动config server,验证快速失败。
在这里插入图片描述
异常,读取配置异常,然后就终止了。

2.4 读取验证

先启动config server 然后启动config client
在这里插入图片描述
它默认发布了好多的接口。
我们尝试访问:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
你在指定的config clieng配置文件夹portconfig中的配置文件的信息都可以访问到。
接下来启动config client
在这里插入图片描述
实际上我们并没有在config client中为config client指定端口,而是在config server中指定了端口。
在这里插入图片描述
在这里插入图片描述
但是它依然使用我们指定的进行启动的。

2.5 普通信息读取

我们在config server中配置config client的端口的文件中还配置了一个message的配置,接下来将尝试读取这个message的值。
首先需要改造config client,增加开放接口,用于读取message.
在这里插入图片描述
创建一个controller,在controller中有一个属性,这个属性就是对应的配置文件中的message,使用@Value读取。
接着开放了一个接口,这个接口返回message的值。
启动config client
在这里插入图片描述
访问:
在这里插入图片描述
成功读取。

3. config server从git读取

3.1 创建远程配置文件

首先将之前的配置文件上传至guthub
在这里插入图片描述
然后将配置文件中的端口从8011修改为8012
在这里插入图片描述

3.2 修改config server 配置

在这里插入图片描述
搜索文件夹地址从这里得到
在这里插入图片描述
然后重新启动config server 和config client
在这里插入图片描述
可以看到其端口已经变成远程配置的端口了。
然后访问message
在这里插入图片描述
原来的端口已经无法访问了,我们换成新的端口试试。
在这里插入图片描述

4. config server 集群化

config server集群化,是集成eureka进行高可用的。
也就是在原来的基础上需要引入eureka server工程,且在config server 与config client中使用eureka。

4.1 eureka server

eureka server直接使用前面项目创建的eureka server,我们这里不会重新创建。
在这里插入图片描述

4.2 config server & eureka

4.2.1 创建springbootconfigeurekaserver

在这里插入图片描述

4.2.2 配置

在这里插入图片描述
直接将3.2的配置文件拷贝过来就行,记得修改服务名称。

4.2.3 多实例启动

在这里插入图片描述
eureka
在这里插入图片描述

4.2.4 验证

在这里插入图片描述
注意,这里从github读取可能存在超时情况。
可以配置超时时间:
在这里插入图片描述
单位是秒
ctrl+左键点击timeout
在这里插入图片描述
在这里插入图片描述
没有timeout吗,应该是在父类中吧
在这里插入图片描述
找到了,看其默认是5秒钟,对于国内环境访问github,嗯嗯嗯,5秒钟还是有点勉强的,直接设置为60秒。

4.3 config client& eureka

4.3.1 创建springbootconfigeurekaclient

在这里插入图片描述

4.3.2 配置

在这里插入图片描述
这里一定遵循一个规则:${spring.application.name}-{spring.profiles.active}就是读取的配置文件的名字。

4.3.3 启动验证端口

在这里插入图片描述
这个端口是我们在远程配置的端口。

4.3.4 验证负载均衡

在这里插入图片描述
从日志看,其访问的是8011的config server实例
而且日志中也打印了配置信息来源
在这里插入图片描述
关闭configeurekaclient在重新启动,看会不会负载均衡。
在这里插入图片描述
成功负载均衡。

4.3.5 验证message

在这里插入图片描述
在这里插入图片描述
成功访问,并且日志也打印了此次请求。
最后看下所有的服务
在这里插入图片描述

发布了182 篇原创文章 · 获赞 88 · 访问量 12万+

猜你喜欢

转载自blog.csdn.net/a18792721831/article/details/104716562