从前面几章开始从0搭建SpringCloud项目,再逐步进行优化,加入其它组件。
上一章加入了熔断器组件,这次讲解一下我对Config配置中心的认识,微服务项目相对于单体项目来说,每个功能都可以分成一个小的服务,每个服务都有自己独立的配置,若部署整个微服务项目的所有服务配置都需要修改,单独打开每一个项目找到配置文件去修改比较麻烦,所以使用配置中心组件可以简化这一操作,让git仓库保存配置文件,更改仓库的文件,对应就修改了对于的小服务的配置,下面开始整合使用。
PS:这一章踩坑特别多,注意细节。
先展示一下我现在的目录结构:
其中,我用demo-product服务拿来做测试:
第一步:新增config配置中心服务
1、右键整个项目,新增一个module,
2、选择java8版本,添加idea自带的这个依赖。
3、这是我的依赖,
4、修改启动类,开启配置中心并注册到注册中心。
5、修改yml文件,注册地址确保正确,git的相关配置确保正确,
6、登入git,新建仓库,新建文件夹,新建文件(没用过git的兄弟百度一下)
将复制下来的链接填在上面配置的uri里面。
search-paths就是新建的文件夹名称,只具体到文件夹即可。若你不是公开仓库,需要配置账号密码,若是公开仓库则不需要。如下设置公开仓库:
点击管理,在基本信息点击开源即可。
展示一下我文件下下面的测试用配置文件(注意:文件格式不是yml,是properties,踩过坑):
第二步:新增客户端服务(重点,坑多)
我前面的例子里面写的有几个服务,我就直接拿product服务来用,或者创建一个普通的springboot项目也行。
将修改这三个文件.
重点:新增一个bootstrap.properties文件,注意名称格式要一模一样,否则用不了,因为启动服务会优先采用这个文件的配置,而不是application.yml的配置,你自己的yml配置里面可能没有业务所需要的配置,只有配置中心的配置有,所以必须写这个连接配置中心。
这是bootstrap.properties文件的配置(连接配置中心),name的值是
profile的值是后缀
uri的值是配置中心的地址
label的值是你git文件存放的节点,一般都是master。
application.yml的配置就正常配置:
注册到注册中心。(特别注意的就是连接配置中心的配置必须写到bootstrap.properties)。
第三步:测试(修改product服务的controller类)
此处,从配置里获取message的值,但是自己的yml配置里面并没有,只有git仓库的配置里面才有,所以调用config接口会获取仓库配置的message值。
第四步:演示
1、开启eureka,gateway,config,product服务,注意开启顺序
2、结果:
3、调用config接口:
返回结果:“222222”,就是仓库配置文件里面的配置。说明获取成功。
后续就可以通过修改仓库的配置文件来修改对应服务的配置了。
若有帮助,帮忙点个赞,兄弟们。