分布式配置中心之Apollo

2,007 阅读1分钟

项目介绍

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

整体介绍

配置更新流程

优缺点

优点

  • 一套环境可以同时支持dev、test、prd三套环境
  • 支持配置热更新

缺点

快读入门

此篇省略,参考 Quick Start

源码阅读

项目结构

apollo client

RemoteConfigLongPollService

直接初始化进行开启长轮询

进行长轮询操作

对返回结果进行处理

RemoteConfigRepository去配置中心拉取配置

中间代码略过,RemoteConfigRepositor同步配置

刷新数据

@EnableApolloConfig注解

需要引入ApolloConfigRegistrar.class 源码如下:

以SpringValueDefinitionProcessor为例:

ReleaseMessageScanner

扫描是否配置更新

有新消息发布,进行处理

listener处理数据

通知client

参考文章