开源全局配置中心XDiamond

简介: 项目地址: https://github.com/hengyunabc/xdiamond简介全局配置中心,存储应用的配置项,解决配置混乱分散的问题。

项目地址: https://github.com/hengyunabc/xdiamond

简介

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

wiki

设计思路

在线演示

地址:xdiamond.coding.io,登陆选择standard,用户名密码:admin/admin

特性

  • 所见即所得,在管理界面上看到的所有配置即项目运行时的配置
  • 支持groupId,artifactId,version,profile四个维度以应对复杂环境
  • 支持公共组件的配置继承,client jar包配置继承
  • 配置修改实时通知客户端
  • 和spring集成,使用简单
  • 完善的权限系统
  • 集成LDAP登陆,支持同步LDAP组/用户
  • 支持http RESTful api获取配置
  • 以secret key防止非法获取配置
  • 丰富的metrics, connection统计

工作原理

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

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

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

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

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

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

界面截图

  • 项目管理:
    这里写图片描述

  • Profile管理:
    这里写图片描述

  • Config管理:
    这里写图片描述
  • 项目依赖关系图:
    这里写图片描述
  • Metrics信息:
    这里写图片描述
  • Connection信息:
    这里写图片描述
相关文章
|
2月前
|
存储 运维 监控
NACOS 配置中心和注册中心是分两个集群部署还是放在一个集群中
【2月更文挑战第33天】NACOS 配置中心和注册中心是分两个集群部署还是放在一个集群中
86 2
|
7月前
|
存储 运维 Dubbo
Nacos 注册中心的设计原理:让你的应用轻松实现高效注册与发现!
Nacos 注册中心的设计原理:让你的应用轻松实现高效注册与发现!
117 0
|
10月前
|
前端开发 NoSQL Java
Nacos 配置中心实际运用场景以及配置优先级简要概述
Nacos 配置中心实际运用场景以及配置优先级简要概述
346 0
|
域名解析 Kubernetes Java
图文详述Nacos配置中心使用:应用间配置共享、扩展配置文件加载优先级、新老版本差异
图文详述Nacos配置中心使用:应用间配置共享、扩展配置文件加载优先级、新老版本差异
2683 1
图文详述Nacos配置中心使用:应用间配置共享、扩展配置文件加载优先级、新老版本差异
|
7月前
|
存储 运维 网络协议
Nacos架构与原理 - 注册中心服务数据模型(2.x版本)
Nacos架构与原理 - 注册中心服务数据模型(2.x版本)
61 0
|
12月前
|
存储 负载均衡 Cloud Native
Nacos注册中心概述、服务注册、分级存储模型及环境隔离
Nacos注册中心概述、服务注册、分级存储模型及环境隔离
248 0
|
存储 前端开发 Java
Nacos源码结构和AP模式注册中心实现介绍
Nacos源码结构和AP模式注册中心实现介绍
|
存储 数据可视化 Java
服务配置中心介绍|学习笔记
快速学习服务配置中心介绍
103 0
服务配置中心介绍|学习笔记
|
缓存 负载均衡 Cloud Native
【云原生&微服务四】SpringCloud之Ribbon和Erueka/服务注册中心的集成细节(获取服务实例列表、动态更新服务实例信息、负载均衡出一个实例、IPing机制判断实例是否存活)
【云原生&微服务四】SpringCloud之Ribbon和Erueka/服务注册中心的集成细节(获取服务实例列表、动态更新服务实例信息、负载均衡出一个实例、IPing机制判断实例是否存活)
379 0
【云原生&微服务四】SpringCloud之Ribbon和Erueka/服务注册中心的集成细节(获取服务实例列表、动态更新服务实例信息、负载均衡出一个实例、IPing机制判断实例是否存活)
|
Kubernetes 开发工具 git
应用中心最佳实践之 -- 多集群多参数发布实战
如果一个用户账号下有多个集群的情况,希望将一个应用同时发布到多个集群里面,并且不同集群环境有不同的参数,这里就可以使用应用中心的多集群发布功能。
1626 0
应用中心最佳实践之 -- 多集群多参数发布实战