V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuxueli
V2EX  ›  Java

XXL-CONF v1.5.0 发布,分布式配置中心

  •  
  •   xuxueli · 2018-06-20 10:22:11 +08:00 · 1898 次点击
    这是一个创建于 2383 天前的主题,其中的信息可能已经有所发展或是发生改变。

    v1.5.0 新特性

    • 1、配置中心 Agent 服务增强:针对非 Java 应用提供 Agent 服务获取配置,提供同步、异步两种 Http 请求方式,原生支持 long-polling ( Http ) 的方式获取配置数据、并实时感知配置变更。同时,强化请求权限校验;
    • 2、配置同步功能:将会检测对应项目下的全部未同步配置项,使用 DB 中配置数据覆盖 ZK 中配置数据并推送更新;在配置中心异常恢复、新配置中心集群初始化等场景中十分有效;
    • 3、配置快照:客户端从配置中心获取到的配置数据后,会周期性缓存到本地快照文件中,当从配置中心获取配置失败时,将会使用使用本地快照文件中的配置数据;提高系统可用性;
    • 4、配置中心,迁移为 spring boot 项目;
    • 5、配置中心,提供官方 docker 镜像( https://hub.docker.com/r/xuxueli/xxl-conf-admin/ );
    • 6、Cglib 代理情况下,如 "@Configuration" 注解,Bean 无法注入配置问题修复;
    • 7、springboot 项目加载 prop 失败的问题修复;
    • 8、升级多项 maven 依赖至较新版本,如 spring 等;

    输入图片说明

    《分布式配置管理平台 XXL-CONF 》

    概述

    XXL-CONF 是一个分布式配置管理平台,拥有"强一致性、毫秒级动态推送、多环境、多语言、配置监听、权限控制、版本回滚"等特性。现已开放源代码,开箱即用。

    特性

    • 1、简单: 部署简单、接入灵活方便,一分钟上手;
    • 2、在线管理: 提供配置中心, 通过 Web 界面在线操作配置数据,直观高效;
    • 3、多环境支持:单个配置中心集群,支持自定义多套环境,管理多个环境的的配置数据;环境之间相互隔离;
    • 4、多数据类型配置:支持多种数据类型配置,如:String、Boolean、Short、Integer、Long、Float、Double 等;
    • 5、多语言支持(配置中心 Agent 服务):提供配置中心 Agent 服务,可据此通过 Http ( long-polling )获取配置数据并实时感知配置变更,从而实现多语言支持。
    • 6、配置变更监听功能:可开发 Listener 逻辑,监听配置变更事件,可据此动态刷新 JDBC 连接池等高级功能;
    • 7、毫秒级动态推送: 配置更新后, 实时推送配置信息, 项目中配置数据会实时更新并生效, 不需要重启线上机器;
    • 8、强一致性:保障配置数据的强一致性,提高配置时效性;
    • 9、配置中心 HA:配置中心支持集群部署,提供系统可用性;
    • 10、推送服务 HA: 配置服务基于 ZK 集群, 只要集群节点保证存活数量大于 N/2N+1, 就可保证服务稳定, 避免单点风险;
    • 11、配置备份: 配置数据同时在 ZK 与 MySQL 中存储和备份, 提高配置数据的安全性;
    • 12、多种获取配置方式:支持 "API、 注解、XML 占位符" 等多种方式获取配置,可灵活选择使用;
    • 13、兼容 Spring 原生配置:兼容 Spring 原生配置方式 "@Value"、"${}" 加载本地配置功能;与分布式配置获取方式隔离,互不干扰;
    • 14、分布式: 支持多业务线接入并统一管理配置信息,支撑分布式业务场景;
    • 15、项目隔离: 以项目为维度管理配置, 方便隔离不同业务线配置;
    • 16、高性能: 通过 Ehcache 对配置数据做 Local Cache, 提高性能;
    • 17、客户端断线重连强化:设置守护线程,周期性检测客户端连接、配置同步,提高异常情况下配置稳定性和时效性;
    • 18、空配置处理:主动缓存 null 或不存在类型配置,避免配置请求穿透到远程配置 Server 引发雪崩问题;
    • 19、用户管理:支持在线添加和维护用户,包括普通用户和管理员两种类型用户;
    • 20、配置权限控制;以项目为维度进行配置权限控制,管理员拥有全部项目权限,普通用户只有分配才拥有项目下配置的查看和管理权限;
    • 21、历史版本回滚:记录配置变更历史,方便历史配置版本回溯,默认记录 10 个历史版本;
    • 22、配置同步:全量检测未同步配置项,使用 DB 中配置备份数据覆盖 ZK 中配置数据并推送更新;在配置中心异常恢复、新配置中心集群初始化等场景中十分有效。
    • 23、配置快照:客户端从配置中心获取到的配置数据后,会周期性缓存到本地快照文件中,当从配置中心获取配置失败时,将会使用使用本地快照文件中的配置数据;提高系统可用性;

    文档地址

    技术交流

    1 条回复    2018-06-20 10:53:22 +08:00
    xuxueli
        1
    xuxueli  
    OP
       2018-06-20 10:53:22 +08:00   ❤️ 1
    // 下载镜像:Docker 地址: https://hub.docker.com/r/xuxueli/xxl-conf-admin/
    docker pull xuxueli/xxl-conf-admin


    // 创建容器并运行:可通过 "PARAMS" 支持自定义 mysql 与 zk 地址;
    docker run -e PARAMS="--mysqladdress=172.17.0.2:3306 --zkaddress=172.17.0.3:2181" -p 8080:8080 -v /tmp:/data/applogs --name xxl-conf-admin -d xuxueli/xxl-conf-admin
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2837 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 07:30 · PVG 15:30 · LAX 23:30 · JFK 02:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.