duic-spring-cloud-config-client

DuiC 统一配置管理 Spring Cloud Client 工具包

License

License

Categories

Categories

CLI User Interface config Application Layer Libs Configuration
GroupId

GroupId

io.zhudy.duic
ArtifactId

ArtifactId

duic-spring-cloud-config-client
Last Version

Last Version

2.0.2
Release Date

Release Date

Type

Type

jar
Description

Description

duic-spring-cloud-config-client
DuiC 统一配置管理 Spring Cloud Client 工具包
Project URL

Project URL

https://github.com/zhudyos/duic
Source Code Management

Source Code Management

https://github.com/zhudyos/duic.git

Download duic-spring-cloud-config-client

How to add to project

<!-- https://jarcasting.com/artifacts/io.zhudy.duic/duic-spring-cloud-config-client/ -->
<dependency>
    <groupId>io.zhudy.duic</groupId>
    <artifactId>duic-spring-cloud-config-client</artifactId>
    <version>2.0.2</version>
</dependency>
// https://jarcasting.com/artifacts/io.zhudy.duic/duic-spring-cloud-config-client/
implementation 'io.zhudy.duic:duic-spring-cloud-config-client:2.0.2'
// https://jarcasting.com/artifacts/io.zhudy.duic/duic-spring-cloud-config-client/
implementation ("io.zhudy.duic:duic-spring-cloud-config-client:2.0.2")
'io.zhudy.duic:duic-spring-cloud-config-client:jar:2.0.2'
<dependency org="io.zhudy.duic" name="duic-spring-cloud-config-client" rev="2.0.2">
  <artifact name="duic-spring-cloud-config-client" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.zhudy.duic', module='duic-spring-cloud-config-client', version='2.0.2')
)
libraryDependencies += "io.zhudy.duic" % "duic-spring-cloud-config-client" % "2.0.2"
[io.zhudy.duic/duic-spring-cloud-config-client "2.0.2"]

Dependencies

compile (4)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 1.7.25
com.fasterxml.jackson.core : jackson-databind jar 2.9.3
org.springframework : spring-web jar 5.0.5.RELEASE
org.springframework.cloud : spring-cloud-context jar 2.0.0.RELEASE

test (2)

Group / Artifact Type Version
com.squareup.okhttp3 : mockwebserver jar 3.10.0
org.springframework.boot : spring-boot-starter-test jar 2.0.1.RELEASE

Project Modules

There are no modules declared in this project.

Travis Docker Pulls GitHub license

 ______              _    ______
|_   _ `.           (_) .' ___  |
  | | `. \ __   _   __ / .'   \_|
  | |  | |[  | | | [  || |
 _| |_.' / | \_/ |, | |\ `.___.'\
|______.'  '.__.'_/[___]`.____ .'

duic 配置中心

duic 是采用 kotlin 与 spring-webflux 开发的配置中心。通过 HTTP 的方式获取配置信息,可管理任何语言、应用的配置。设计目标是统一不同应用的配置管理方式,打造更人性化的配置编辑方式,提供更灵活的配置获取方式。

  • 支持 mongodb, mysql, postgresql 存储配置信息

  • 支持多配置合并

  • 支持按需获取配置

  • 支持用户权限控制

  • 支持 ip/token 访问限制

  • 支持分布式集群配置管理

  • 支持 docker

特性

  • 集中配置管理, 多应用多环境配置

    在 web 控制台中你可以创建多个配置,相同应用不同环境的配置可以使用(profile)区分,同一个应用下多个(profile)配置可以合并 https://duic.zhudy.io/index.html

  • 配置数据类型/数据格式

    duic 采用 yaml 文件格式管理配置,天生支持数据类型及数据格式

  • HTTP 方式拉取配置

    duic 采用 HTTP 的方式拉取配置,所以你可以在任何应用中使用 duic 配置管理

  • 配置状态检查

    支持配置状态检查,如果配置发生变动该状态也会相应变化,使用方可根据状态的变化重载配置

    GET {base_uri}/apps/states/{name}/{profiles}

  • 多配置合并

    相同应用(name)下的多个配置(profile)可以合并配置,相同 key 的配置将以深度合并的方式返回

    GET {base_uri}/apps/{name}/{profile},{profile2},{profile3}

    合并方式按照请求 URLprofile 顺序,后者覆盖前者

  • 按需获取配置

    你有时可能需要获取某个 key 的配置而不是整个 profile 的配置

    GET {base_uri}/apps/{name}/{profile}/{key}

    key 支持按 . 分隔, key 可以获取子项的所有配置

    Important
  • 完美支持 spring-boot

    duic 不仅可以管理你的业务配置,同时还可以管理 spring-boot 自身的任何配置,你可以像在 application.yaml 文件中编辑配置一样的编辑它, 同时我们还提供了 duic-spring-cloud-config-client,该库支持 @ConfigurationProperties @Value 注解,同时还支持配置热加载

  • 配置权限管理

    支持配置权限管理,用户只可以修改自身拥有权限的配置

  • 配置支持 IP 访问限制

    每个 profile 的配置都可以设置 IP 访问控制,不在访问限制内的 IP 将无法获取配置信息

  • 配置支持 TOKEN 校验

    访问有 TOKEN 校验的配置必须在请求中带上 TOKEN,TOKEN 校验失败将无法获取配置信息

  • 支持 docker 部署

  • 部署简单

    duic 部署非常简单,只依赖一个数据库存储配置数据,不依赖其它任何中间件,即可实现分布式集群部署

  • 高性能

    duic 是采用 spring-webflux 开发,能最大化利用机器的硬件资源,同时 duic 是直接将所有可用的配置直接加载在内存中,在拉取配置时 直接从内存中返回配置信息,对于数据库没有任何压力

资源

已知用户

Tip

按登记顺序展示

如果你正在使用 duic,欢迎在 https://github.com/zhudyos/duic/issues/3 登记。仅作为开源参考,不作其它用途

么么直播

感谢

JetBrains
io.zhudy.duic

Zhudy Open Source

专注于做开箱即用的微服务系统

Versions

Version
2.0.2
2.0.1
2.0.0
1.3.0
1.2.1
1.2.0
1.1.0
1.0.1
1.0.0