Apollo配置中心使用及热更新
发布日期:2021-06-30 21:30:31
浏览次数:2
分类:技术文章
本文共 1889 字,大约阅读时间需要 6 分钟。
介绍
Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。
Apollo支持4个维度管理Key-Value格式的配置:
- application (应用)
- environment (环境)
- cluster (集群)
- namespace (命名空间)
Apollo与Spring Cloud Config的功能对比
客户端配置
引入jar包
com.ctrip.framework.apollo apollo-client 1.5.1 org.apache.commons commons-lang3
增加配置
app: id: gateway-test # apollo中配置的appidapollo: # meta: http://127.0.0.100:31515 #apollo配置中心地址 configService: http://127.0.0.100:31515 #使用net等地址转发时使用。 bootstrap: enabled: true #向spring注入被托管的application.properties文件的配置信息 eagerLoad: enabled: true #将Apollo配置加载提到初始化日志系统之前
- 在使用apollo.meta配置时,可能无法对使用net等地址转发情况处理。
apollo地址查看
配置中心配置
创建项目
部门:应用所在部门
AppId: 应用唯一表示,对应client配置的app.id
应用名称:在配置中心显示的名称,用于直观了解应用用途
添加配置
- key:spring配置文件中application配置文件中对应的参数key
- value:key对应的值
- 选择集群:在不同的环境中是否可以读取到,对应client的mate地址。
发布配置
效果
优先使用apollo中的配置信息。
应用中application配置如下:
server: port: 8808
...13:01:55.330 [main] INFO o.s.boot.web.embedded.netty.NettyWebServer - Netty started on port(s): 880913:01:55.331 [main] INFO o.s.c.n.e.s.EurekaAutoServiceRegistration - Updating port to 8809
参数格式
热更新
namespace名称application
多环境配置
多namespace
新增namespace配置
使用多namespace配置
通过namespace配置读取多个apollo配置,默认为properties格式,yml格式读取需要加后缀。
app: id: gateway-test # apollo中配置的appidapollo: meta: http://xxx.xxx.xxx.xxx:31515 #apollo配置中心地址 bootstrap: enabled: true #向spring注入被托管的application.properties文件的配置信息,默认true eagerLoad: enabled: true #将Apollo配置加载提到初始化日志系统之前 namespaces: application,max-route.yml #多配置环境
可以通过url查看发布的配置是否成功,单机环境clusters=default
格式:http://{meta地址}/configs/{appid}/{clusters}/namespace
如:
http://ip:31515/configs/gateway-test/default/max-route.yml
http://ip:31515/configs/gateway-test/default/application
转载地址:https://lizz6.blog.csdn.net/article/details/103693349 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月22日 05时58分52秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Android照相功能驱动层中HAL的实现(基于OK6410开发板+OV9650摄像头)
2019-04-30
Android Camera HAL设计初步
2019-04-30
基于U-boot上TFTP服务器更新系统
2019-04-30
Python列表应用copy模块的深拷贝和浅拷贝思路整理-1
2019-04-30
Python列表应用copy模块的深拷贝和浅拷贝思路整理-2
2019-04-30
Python列表应用copy模块的深拷贝和浅拷贝思路整理-3
2019-04-30
Python元组应用copy模块的深拷贝和浅拷贝思路整理-1
2019-04-30
2021年Windows下安装GPU版本的Tensorflow和Pytorch
2019-04-30
基于yolov5算法的安全帽头盔检测|Pytorch开发+数据集+源码+模型
2019-04-30
Python模块导入的注意事项
2019-04-30
Python中super的继承顺序以及__mro__
2019-04-30
JAVA基础逻辑运算符
2019-04-30
面试题 java垃圾回收机制
2019-04-30
【HashMap】JAVA源码分析-HashMap源码分析
2019-04-30
【HashMap】Java8 ConcurrentHashMap详解
2019-04-30
Java 内存模型与线程
2019-04-30
使用jekins自动构建部署java maven项目
2019-04-30
【设计模式】JAVA设计模式之模板方法模式
2019-04-30
【设计模式】Java的三种代理模式简述
2019-04-30
使用代理录制Jmeter脚本
2019-04-30