首页 > 代码库 > disconf-client-for-java
disconf-client-for-java
一、disconf客户端部署
disconf目前仅支持java客户端,下文针对java客户端安装作为整理,记录下安装部署的步骤
1.环境依赖
首先需要安装java环境及maven环境,不再过多介绍
2.下载disconf-for-java客户端
[root@shuke client]# git clone https://github.com/knightliao/disconf-demos-java.git
[root@minion client]# tree -L 2
.
└── disconf-demos-java
├── disconf-spring-boot-demo 使用disconf的基于Spring的standalone demo程序
├── disconf-standalone-demo 集成了disconf和dubbo的基于Spring的standalone demo程序
├── disconf-standalone-dubbo-demo 使用disconf的spring-boot demo程序,更少的配置
├── pom.xml
└── README.md
4 directories, 2 files
- 下文以disconf-standalone-demo为例
- 编辑disconf-client客户端下载的配置文件
[root@minion rd]# vim /data/disconf/client/disconf-demos-java/disconf-standalone-demo/profile/rd/disconf.properties [root@minion rd]# egrep -v "^#|^$" disconf.properties disconf.enable.remote.conf=true #是否使用远程配置文件,true(默认)会从远程获取配置, false则直接获取本地配置disconf.conf_server_host=127.0.0.1:8084 #修改为discon-web的访问地址disconf.version=1_0_0_0 #app对应的版本号disconf.app=dzhops #app名称disconf.env=rd #app的环境disconf.ignore=redis.properties code.properties #忽略的分布式配置,用空格分隔disconf.conf_server_url_retry_times=1 #获取远程配置重试次数,默认3次disconf.conf_server_url_retry_sleep_seconds=1 #获取远程配置 重试时休眠时间,默认是5秒disconf.user_define_download_dir=./disconf/download #用户定义的下载文件夹, 远程文件下载后会放在这里。注意,此文件夹必须有有权限,否则无法下载到这里disconf.enable_local_download_dir_in_class_path=true #下载的文件会被迁移到classpath根路径下,强烈建议将此选项置为 true(默认是true)
- 编辑disconf-client客户端下载对应文件的配置文件(内容为需要下载的,自己在本地部署的应用程序所依赖的文件,从disconf-web下载)
[root@minion resources]# vim /data/disconf/client/disconf-demos-java/disconf-standalone-demo/src/main/resources/applicationContext.xml 26 <!-- 使用托管方式的disconf配置(无代码侵入, 配置更改会自动reload)--> 27 <bean id="configproperties_disconf" 28 class="com.baidu.disconf.client.addons.properties.ReloadablePropertiesFactoryBean"> 29 <property name="locations"> 30 <list> 31 <value>classpath:/server.cfg</value> #从disconf-web下载的文件,存放在discon-web服务器上面,启动disconf-client客户端,文件将会被下载 32 <value>classpath:/settings.py</value> #从disconf-web下载的文件,存放在disconf-web服务器上面,启动disconf-client客户端,文件将会被下载 37 </list> 38 </property> 39 </bean>
3.使用maven构建项目
[root@minion disconf-demos-java]# pwd/data/disconf/client/disconf-demos-java[root@minion disconf-demos-java]# mvn package #构建下载环境依赖[root@minion disconf-demos-java]# cd disconf-standalone-demo/[root@minion disconf-standalone-demo]# cat README.md #查看readme说明[root@minion disconf-standalone-demo]# mvn clean package #构建环境,生成target目录
[root@minion disconf-standalone-demo]# cd target/
[root@minion target]# ls
classes disconf-standalone-demo.jar disconf-standalone-demo.tar.gz maven-archiver maven-status original-disconf-standalone-demo.jar starter-run
[root@minion target]# cd starter-run/
[root@minion starter-run]# ls
disconf.properties disconf-standalone-demo.jar env logback.xml start.sh stop.sh #启动及停止客户端程序目录,disconf.properties为配置文件
4.启动client进程
[root@minion starter-run]# sh start.sh #启动进程[root@minion starter-run]# sh stop.sh #停止进程
[root@shuke starter-run]# ps -ef | grep "disconf-standalone-demo.jar" #查找客户端进程是否运行,可以在log目录下查看相关日志
root 20075 1 22 00:20 pts/2 00:00:04 java -server -Xms1024m -Xmx1024m -Xmn448m -Xss256K -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=64m -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:ParallelGCThreads=2 -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Dlogback.configurationFile=file:logback.xml -jar disconf-standalone-demo.jar
root 20098 3975 0 00:20 pts/2 00:00:00 grep disconf-standalone-demo.jar
5.文件下载检查
文件下载成功后会存放在当前路径及disconf/download目录下,如果在disconf-web端修改文件内容,客户端会自动检测并下载更新.
disconf-client-for-java