为什么需要配置中心?
微服务架构没有配置中心:
- 配置文件分散在各个项目里,不方便维护
- 配置内容安全与权限,实际开发中,开发人员是不知道线上环境的配置的
- 更新配置后,项目需要重启
描述下配置中心原理
把原本放在本地文件的配置抽取出来放在中心服务器,本质是配置信息从本地迁移到云端。从而能够提供更好的管理、发布能力。
结构图
组件
- Config-Client : 提供了基于 Spring 的客户端
- Config-Server : 负责将远程的配置返回给客户端
- Remote Repository : 远程仓库(svn/git)
- Local Repository : 将远程仓库的配置 clone 到本地的临时目录
优点
- 提供服务端和客户端支持
- 集中管理各环境的配置文件
- 配置文件修改之后,可以快速的生效
- 可以进行版本管理
- 支持大的并发查询
- 支持各种语言
缺点
- 动态配置能力弱
- 调整配置需要重新部署,添加代码比较多
- 治理能力弱
- 安全审计能力弱
- 不算严格企业级
- 适用于小型项目