Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Apollo | 27,877 | 141 | 44 | 19 hours ago | 19 | June 04, 2022 | 148 | apache-2.0 | Java | |
Apollo is a reliable configuration management system suitable for microservice configuration management scenarios. | ||||||||||
Nacos | 25,828 | 118 | 56 | 14 hours ago | 53 | August 08, 2022 | 246 | apache-2.0 | Java | |
an easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications. | ||||||||||
Genie | 1,611 | 8 | a month ago | 208 | March 29, 2022 | 6 | apache-2.0 | Java | ||
Distributed Big Data Orchestration Service | ||||||||||
Agileconfig | 1,120 | 11 | 24 days ago | 51 | June 04, 2022 | 25 | mit | C# | ||
基于.NET Core开发的轻量级分布式配置中心 / .NET Core lightweight configuration server | ||||||||||
Layotto | 709 | 8 days ago | 38 | May 12, 2022 | 66 | apache-2.0 | Go | |||
A fast and efficient cloud native application runtime | ||||||||||
Juno | 447 | 8 days ago | 39 | October 10, 2022 | 11 | apache-2.0 | JavaScript | |||
Juno 译名朱诺。这个名字来源于古罗马神话中的众神之母。它是斗鱼的微服务管理系统, 如同众神之母一样守护着所有微服务的系统。 | ||||||||||
Femas | 428 | 3 months ago | 48 | other | Java | |||||
Cloud native multi-runtime microservice framework | ||||||||||
Microconfig | 265 | a month ago | apache-2.0 | Java | ||||||
Modern tool for microservice configuration management | ||||||||||
Xconf | 219 | a year ago | 13 | mit | TypeScript | |||||
分布式配置中心 | ||||||||||
Configuration | 73 | 1 | 8 months ago | 6 | July 27, 2022 | mit | Go | |||
Library for setting values to structs' fields from env, flags, files or default tag |
XConf
基于 go-micro 构建的分布式配置中心,提供配置的管理与发布、实时推送.
.
├── LICENSE
├── README.md
├── admin-api // 配置管理 api 服务
├── agent-api // 配置获取,推送服务
├── client // micro config 客户端插件
├── config-srv // 配置管理服务
├── dashboard // 前端UI
├── doc
├── go.mod
├── go.sum
├── micro // micro api 网关
└── proto
线上 demo - http://xconf.mogutou.xyz/admin/ui
依赖
MySQL XConf 底层存储使用 mysql 数据库
CREATE DATABASE xconf
root:[email protected](127.0.0.1:3306)/xconf?charset=utf8&parseTime=true&loc=Local
docker 快速启动 all in one
所有服务打包到一个容器中,仅仅作为快速预览使用,不可作为生产使用。
docker pull xuxu123/xconf-all:latest
docker run --name xconf -it --rm -p 8080:8080 -e BROADCAST=broker -e DATABASE_URL="root:[email protected](IP地址:3306)/xconf?charset=utf8&parseTime=true&loc=Local" xuxu123/xconf-all
agent
agent 负责实时获取指定 应用/集群 下的所有配置文件到指定文件夹中
NAME:
agent - XConf agent client
USAGE:
main [global options] command [command options] [arguments...]
VERSION:
0.0.1
COMMANDS:
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--url value, -u value base url (default: "127.0.0.1:8080") [$XCONF_BASE_URL]
--app value, -a value app name [$XCONF_APP_NAME]
--cluster value, -c value cluster name [$XCONF_CLUSTER_NAME]
--dir value, -d value directory (default: "/tmp") [$XCONF_DIR]
--help, -h show help
--version, -v print the version
docker run --name agent -v /tmp/docker-xconf:/tmp -d xuxu123/agent -u http://xconf.mogutou.xyz -a test -c dev -d /tmp
Golang pkg/client/example
git clone https://github.com/micro-in-cn/XConf.git
cd XConf/pkg/client/example
go run main.go
客户端支持读取配置,实时获取配置更新(页面上"发布"操作才能触发配置推送,"保存"操作仅是保存配置)
XConf 参考了 Apollo 在业界成熟的设计方案。