# Dyd.BaseService.ConfigManager
**Repository Path**: geffzhang/Dyd.BaseService.ConfigManager
## Basic Information
- **Project Name**: Dyd.BaseService.ConfigManager
- **Description**: 统一配置中心
用于所有项目统一的配置集中管理,简化运维和项目部署,具备高灵活性,高性能,高稳定性,高及时性。
同时具备配置项的负载均衡和故障转移,从而实现项目的软性的负载均衡和故障转移能力。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 121
- **Created**: 2015-11-22
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 统一配置中心 #
用于所有项目统一的配置集中管理,简化运维和项目部署,具备高灵活性,高性能,高稳定性,高及时性。
同时具备配置项的负载均衡和故障转移,从而实现项目的软性的负载均衡和故障转移能力。
## 1.高灵活性 ##
一个项目可以自由组合或者继承多个分类配置,多个分类的相同配置项可以被子分类配置项覆盖。
(举例:项目A可以组合使用“基础数据库配置”,“基础监控配置”,“基础日志配置”,“项目A配置”;项目A配置可以定义自身的特殊配置和覆盖一些基础配置)
## 2.高稳定性 ##
sdk(客户端)默认会在“本地”保存项目的所有配置“快照”,若统一配置中心异常,sdk将从上一次可用“快照”获取配置,并在配置中心恢复后,获取最新版本。
## 3.高性能 ##
sdk(客户端)默认在本地内存中缓存“最新版本”的项目配置,sdk获取的配置都从内存版本中获取。
## 4.高及时性 ##
- sdk(客户端)默认心跳时间内连接配置中心获取最新配置修改。
- web端的配置修改,通过第三方消息中间件及时通知相关sdk至配置中心获取最新修改。
- web端可以重启相关分类/相关项目的客户端,重新初始化所有的配置信息。
## 5.配置负载均衡 ##
可以在web端手工配置某个配置的负载均衡(可以配置不同的使用权重命中不同的负载均衡配置)
(若要自动,请编写任务挂载到“任务调度”中,根据业务情况,动态调整负载均衡权重。参考openapi接口)
## 6.配置故障转移 ##
可以在web端手工配置某个配置的故障转移。
(若要自动,请编写任务挂载到“任务调度”中,根据业务情况,动态监测当前配置的故障情况,然后选择使用备用故障配置。参考openapi接口)
----------
开源相关QQ群: **.net 开源基础服务 238543768**
(大家都有本职工作,也许不能及时响应和跟踪解决问题,请谅解。)
## 部分截图 ##