开源全局配置中心XDiamond应用解析

XDiamond是一个开源的全局配置中心,源自淘宝,用于解决配置分散混乱的问题。它支持多维度环境配置,与Spring集成,配置更新后可实时获取并自动加载。本文介绍了XDiamond的工作原理、安装配置、服务端配置、客户端配置及其监听机制。
摘要由CSDN通过智能技术生成

 

简介:

全局配置中心,存储应用的配置项,解决配置混乱分散的问题。名字来源于淘宝的开源项目diamond,前面加上一个字母X以示区别。

特性:

服务端:

配置文件支持artifactId内部不同环境的继承和artifactId直接的依赖;

支持groupId,artifactId,version,profile四个维度以应对复杂环境;

可以对指定环境设置secret key防止非法获取配置;

支持json格式批量添加key,value;

支持多环境部署;

客户端:

和spring集成,使用简单;

配置修改后实时获取更新;

对修改提供监听,修改后无需重启服务自动加载修改结果;

工作原理

每个项目有groupId,artifactId,version,然后在不同的环境里对应不同的profile,比如:test, dev, product。

应用在启动时,通过网络连接到xdiamond配置中心,获取到最新的配置。如果没有获取到,从本地备份读取最后拉取的配置。

在Spring初始化时,把配置转为Properties,应用可以通过${}表达式或者@Value来获取配置。

如果配置有更新,可以通过Listener来通知应用。

每个项目都有一个base的profile,所有的profile都会继承base的配置。在base可以放一些公共的配置,比如某个服务的端口。

对于使用者,xdiamond提供的是一个Properties对象。用户可以结合Spring等来使用。

安装配置

    从git获取源码,下载地址:https://github.com/hengyunabc/xdiamond.git

   

进入下载目录,修改各个目录下的pom.xml文件,去除无用引用,更改jar引用版本为自己使用版本,以免构建报错。

    在根目录执行mvn命令,加载需要的jar包。进入xdiamond-common,对程序进行打包。

进入xdiamond-server,修改web.xml配置文件,设置xdiamond-server的运行环境dev或product。修改config下application.dev.properties和application.product.properties,设置相应环境的数据库信息,注释掉xdiamond.initDatabase=true,以免服务重启的时候重建数据库导致之前设置的信息丢失。执行mvn命令,将xdiamond-server打包成war包。

在mysql客户端按顺序打开database下的schema-dev.sql和data-dev.sql并执行,创建系统运行所需的数据库表和初始化数据。

发布war包到web容器并重启。访问相应地址链接,点击Standard,默认用户名和密码都是admin。为了防止样式混乱,建议使用chrome浏览器访问。

       

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值