相信大家在开发的过程中,都会遇到部署不同环境,配置相同变量,相同参数,却不同值的情况吧,日常生活中,简单说,只要是工作一两年以上的都是接触过服务器,哪怕没有接触过服务器,那么也写过配置文件,针对以上情况,相信大家都是很痛苦,常规方案:
1.部署springboot工程,比如需要修改配置文件,这时怎么办?emmmm,修改本地项目配置,打包重新部署。。。好折腾。
2.部署springcloud工程,相对比springboot要灵活很多了,这时修改ConfiServer对应的配置信息(比如git地址内容,db参数等),然后在通过refresh刷新配置,ok也能得到预期的效果。但是还是不够灵活,且听慢慢道来。
3.集成apollo(阿波罗,携程的配置中心架构),这种方式会很便捷,方便配置,但是始终还是使用的别人的saas。
解决方案:
今天要推出的一种解决方案就是,自己搭建配置中心。
准备工作:
1.下载源码及demo,https://download.csdn.net/download/lj88811498/11250746
2.参考笔记文档进行安装。
⑴. 部署easyconf工程,完成后可以进行登陆默认账号admin/111111
登陆进入首页后,点击环境类型,可以进行环境配置
工程列表,可以添加新的工程配置。点击右侧设置按钮,添加一个配置
添加完之后,点击创建配置
创建完之后,可以到配置信息去配置参数了。点击配置信息。编辑
编辑好配置文件之后保存。
配置完成之后,回到刚才的配置信息,点鸡查看按钮。可以看到刚才的配置
使用postman
ok,到此配置中心已经配置好了。
⑵.使用demo.jar包部署
启动命令:(springboot工程,非springboot工程不能使用此方式)
java -jar demo.jar --spring.config.location=http://localhost:8083/config/getConfig.properties/my-monkey/dev/1.0/.properties
此时启动完成之后,我们可以访问一下test方法。
可以看到启动端口在代码里配置的是8084,但是配置中心写的是server.port=8080,且打印的端口代码配置的是8080,配置中心写的是spring.port=8888-hello-world,所以我们的配置中心已经生效了。
至此,你的配置中心就搭建完成了!
PS: 如果你的配置文件是多个环境的,那么你需要把要配置在配置中心的配置字段提到最主要的配置文件里,
如application.yml,application.properties ,这时需要删除激活其他副yml文件里的字段才能起作用哦~~
感谢 孤月夜行舟 提供的配置中心源码。