微服务专栏地址
目录
1. 简介
通过以下几个问题理解微服务中的集中配置中心
1. 微服务配置中心是什么
2. 为什么需要微服务配置中心
3. 微服务配置中心实现技术
4. 技术如何选型
2. 微服务配置中心是什么
集中式配置是将应用系统中对配置信息的管理作为一个新的应用功能模块,区别与传统的配置信息分散到系统各个角落方式,进行集中统一管理,并且提供额外功能。尤其是在微服务架构中,是不可或缺组件,甚至是必要组件之一。
3. 为什么需要微服务配置中心
在微服务体系中,服务的数量以及配置信息的日益增多,比如各种服务器参数配置、各种数据库访问参数配置、各种环境下配置信息的不同、配置信息修改之后实时生效等等,传统的配置文件方式或者将配置信息存放于数据库中的方式已无法满足开发人员对配置管理的要求,如:
- 安全性:配置跟随源代码保存在代码库中,容易造成配置泄漏
- 时效性:修改配置,需要重启服务才能生效
- 局限性:无法支持动态调整:例如日志开关、功能开关
4. 微服务配置中心实现技术
对微服务的几种成熟或者流行的集中式配置实现技术做个简要对比,重点理解一下apollo配置中心与SpringCloudConfig。
4.1 网罗的实现技术
- Apollo(阿波罗):是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
- XDiamond:全局配置中心,存储应用的配置项,解决配置混乱分散的问题。名字来源于淘宝的开源项目diamond,前面加上一个字母X以示区别。
- Qconf: 奇虎