logo头像
Snippet 博客主题

配置中心Apollo-初探Apollo

本文于302天之前发表,文中内容可能已经过时。

简介与简易安装

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
服务端基于 Spring Boot和Spring Cloud 开发,打包后可以直接运行,不需要额外安装 Tomcat 等应用容器。
Java 客户端不依赖任何框架,能够运行于所有 Java 运行时环境,同时对 Spring/Spring Boot 环境也有较好的支持。
.Net 客户端不依赖任何框架,能够运行于所有 .Net 运行时环境。
通过 https://github.com/ctripcorp/apollo/wiki/Quick-Start 可以进行快速安装开始了解 Apollo
安装启动登录后进入主页面
主页面

配置应用

接下来新建 SpringBoot 项目进行 Apollo 配置管理测试
设置 Apollo Meta Server 地址来找到Apollo配置中心
设置Apollo Meta Server
引入 apollo-client

1
compile group: 'com.ctrip.framework.apollo', name: 'apollo-client', version: '1.2.0'

通过 properties 配置设置 app.id 来关联Apollo配置中心和应用程序,设置 apollo.bootstrap.enabled 来启用客户端中的 apollo-client
设置apollo客户端

使用配置信息

将当前客户端的app.id的值在Apollo配置中心创建项目
创建项目
新增配置 spring.datasource.primary.jdbc-url 并发布
设置apollo客户端
在客户端通过接口获取键值以便观察配置值变化情况
设置apollo客户端
启动测试程序通过 http://localhost:10008/getValue 获取 spring.datasource.primary.jdbc-url 的值,可以看到已经通过拿到 Apollo 中最新的配置
设置apollo客户端
再次在 Apollo 配置中心更新 spring.datasource.primary.jdbc-url 的值为 test,不重启客户端刷新页面便看到键值已经更新
设置apollo客户端
Apollo 对键值的获取有多种方式完全能满足日常使用,对原本配置文件配置方式转换到 Apollo 也做了考虑,可以在配置页面选择文本的方式将 properties 中的配置信息导入
设置apollo客户端
如果希望把日志相关的配置也放到 Apollo 中管理则可以通过设置 apollo.bootstrap.eagerLoad.enabled=true 方式在日志系统加载之前加载配置信息
总体来说 Apollo 对日常的配置信息管理已经做的非常好,后续文章我们将了解一些 Apollo 在应对特殊配置上的使用

Apollo Github主页:https://github.com/ctripcorp/apollo
Apollo客户端使用:https://github.com/ctripcorp/apollo/wiki/Java客户端使用指南

微信打赏

赞赏是不耍流氓的鼓励