Spring Cloud 整合 Apollo 配置中心

本文转载自:https://www.datawisher.cn/

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

Apollo 和Spring Cloud Config 对比

功能点 Apollo Spring Cloud Config
配置界面 统一管理不同环境 / 集群环境 无,通过git操作
配置生效时间 实时 重启生效,或者Refresh,或者git hook + MQ 扩展
版本管理 界面直接提供发布历史和回滚按钮 无,通过git操作
灰度发布 支持 不支持
授权 / 审计 / 审核 界面直接操作,且支持修改和发布权限分离 需要通过git仓库设置,且不支持修改和发布权限分离
实例配置监控 可以方便的看到当前哪些客户端在使用哪些配置 不支持
配置获取性能 快,通过数据库访问 + 缓存支持 较慢,需要通过git clone repo,然后本地文件读取
客户端支持 原生支持Java/.Net,提供API,支持Spring annotation Spring应用 + annotation支持

项目实战

explore-ctrip-apollo

apollo安装启动

https://github.com/ctripcorp/apollo/wiki/Quick-Start

项目配置

  • 可以在Spring Boot的application.properties或bootstrap.properties中指定app.idapollo.meta
    Apollo支持应用在不同的环境有不同的配置,所以需要在运行提供给Apollo客户端当前环境的Apollo Meta Server信息。默认情况下,meta server和config service是部署在同一个JVM进程,所以meta server的地址就是config service的地址。

  • 也可通过server.properties配置文件,这个也是本地缓存路径的位置
    /opt/settings/server.properties
    本地缓存文件名的组成:{appId}+{cluster}+{namespace}.properties

  • 也可通过app.properties配置文件
    classpath:/META-INF/app.properties

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容