介绍
Apollp(阿波罗)是携程框架部门研发的分布式配置中心,能够集中优化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特征,适用于微服务配置管理场景。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。
- 原理
1.通过长链接(Socket),实时获取最新的服务端配置数据
2.定时拉取配置(补偿机制)
3.客户端获取数据后,将数据保存到内存中,也会将数据保存到本地文件中
搭建
环境要求
java
- Apollo服务端:1.8+
- Apollo客户端:1.7+
MySql - 版本要求:5.6.5+
Linux环境搭建(只记录流程)
(1)下载Apollo
(2)创建官方提供的两个数据库
(3)修改数据库链接,在.sh的启动文件中,修改这个文件的两个数据库链接
(4)启动.sh文件,然后访问8070端口(账号:apollo,密码:admin)
客户端集成
- 添加依赖
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-client</artifactId>
<version>1.1.1</version>
</dependency>
- 配置文件
apollo:
bootstrap: #开启apollo
enabled: true
meta: http://192.168.0.101:8080 #服务端地址
app:
id: product-service #在apollo后台配置的应用名称
假如在配置文件中有个一name属性,要怎么修改呢?
- 在管理后台,点击新增配置按钮
- 添加key为name,value为你要修改的值
- 提交
- 发布
然后就可以修改成功了
注意:在启动客户端的时候,需要添加一个配置参数,如:-Demo-DEV,代表开发环境。要不然,客户端启动会报错。