分布式配置中心--autoconf
四个方面
- 配置的演进
- 各种分布式配置中心
- autoconf介绍,功能介绍,以及易用UI
- autoconf实现原理
先回答什么是配置
程序在运行时的动态调整的能力 无需重启服务,无需重新编译
配置的演进
分布式配置中心一览
目前分布式配置中心其实挺多的 比如 百度的disconf, 阿里的diamond,携程的disconf等。本文不是比较他们的性能优劣 只是介绍autoconf
autoconf
一款高性能的分布式配置中心。用postgresql+zeromq存储数据 支持实时推,60秒定时拉。支持各种数据类型
autoconf的功能特点
1. 多环境:支持test/stage/product等多环境 2. 多版本:保存历史版本,可回滚版本 3. 推拉模型:实时推送变更,60秒定时拉 4. 灾备模型:本地缓存防止网络故障,redis减轻DB压力,DB做持久存储 5. 任意类型:支持KV,xml,html甚至二进制数据 6. 权限管理:分组权限管理,敏感信息加密 7. 批量修改: 创建多个同名不同配置组的配置,批量修改多个配置文件中的同一个字符串 8. 优先级:ip:port>ip>appName>envName 9. 极速搜索 注:配置组对应的就是一套开发环境。比如test环境是一个配置组。生产环境是一个配置组 配置文件是各种配置。比如mysql配置,redis配置
autoconf后台管理界面
autoconf的实现原理
从应用调用角度来看 1. 应用调用controller。 2. controller先查询redis缓存 3. 如果没有,再查询数据库 从管理员角度 1. 修改配置 2. 发送一个mq给zeromq,zeromq先暂时存储, 3. 等待60秒以后,后台会拉取mq的消息。清除缓存。并将修改存到数据库
注:配置对后台使用人员是加密的。如果要查看配置,需要相应的解密权限
附 github地址:https://github.com/colin-lee/...
相关推荐
LeeLuffy 2020-10-16
loviezhang 2020-08-08
ZHANGYONGHAO0 2020-07-05
wqbala 2020-07-04
枫叶上的雨露 2020-07-04
isHooky 2020-06-25
middleware0 2020-06-10
middleware0 2020-06-09
joynet00 2020-06-04
buaashang 2020-05-18
aNian 2020-05-15
manongxiaomei 2020-05-10
wqbala 2020-05-05
loviezhang 2020-04-23
Cheetahcubs 2020-04-16
IT智囊 2020-04-15
憧憬 2020-03-27
zyz0 2020-03-20
Cheetahcubs 2020-03-11