|
公司一款分布式软件,居然玩出了6个环境:
1、dev
2、test
3、sit
4、stage
5、uat
6、prd
这每个环境都有一堆模块,每个模块都要连接mq、zookeeper、redis、mysql等,如何管理这些配置?别告诉我你要登录服务器一台台修改哈,那样会出大乱子的。推荐disconf,模块启动的时候加一个参数即可,如下:
java -Ddisconf.conf=/app/hrt/conf/goods/disconf.properties
disconf.properties内容如下:
#这里定义开关,为true表示打开
disconf.enable.remote.conf=true
#定义disconf服务端地址
disconf.conf_server_host=10.0.53.12:8081
#定义配置版本,与disconf上的要对应起来
disconf.version=1.0
#模块名称,与disconf中的app名称也要对应起来
disconf.app=hrt-goods
#环境名称,很重要,不同环境靠这个区分
disconf.env=sit
disconf.ignore=
disconf.conf_server_url_retry_times=2
disconf.conf_server_url_retry_sleep_seconds=1
disconf.user_define_download_dir=/app/hrt/conf/goods
disconf.enable_local_download_dir_in_class_path=true
剩下的就是程序员的工作了,模块与disconf同步成功后,会把配置文件下载到disconf.user_define_download_dir定义的/app/hrt/conf/goods目录下,再看看disconf界面,电商后台的goods模块已经和disconf同步成功了,以后不管是查询配置还是修改配置都十分方便了:
|
|
|
|
|
|
|