欢迎光临
我们一直在努力

Apollo配置中心

一、简介

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

服务端基于spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外的安装Tomcat等应用容器。

目前支持一下客户端:Java客户端不依赖任何框架,能够运行于所有Java运行环境,同事对Spring/Spring Boot环境也有较好的支持。.Net客户端不依赖任何框架,能够运行于所有.Net运行时环境。

Apollo更多介绍:https://github.com/ctripcorp/apollo。

Apollo支持4个维度管理Key-Value格式的配置:

  1. application (应用)
  2. environment (环境)
  3. cluster (集群)
  4. namespace (命名空间)

Apollo的优势还可以通过与Spring Cloud Config对比来体现出:

Apollo配置中心

二、Apollo工作流程图

Apollo配置中心

四、环境搭建

4.1、搭建前提

环境搭建也是参考官网的环境搭建,我们在搭建apollo配置中心的时候选择一个合适的版本,在 官网 的 Relase  Notes中:版本发布历史,官方推荐,我们选择源码编译安装:

Apollo配置中心

4.2、上传apollo客户端至nexus私服仓库

说明:这个客户端是开发那边编译打包的时候需要依赖的jar包,不然怎么知道我需要下载哪里的配置文件

apollo-1.2.0.pom apollo-client-1.2.0.jar apollo-core-1.2.0.jar 

1. apollo-1.2.0.pom的坐标为:

<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo</artifactId> <version>1.2.0</version> <type>pom</type> </dependency> 

2.apollo-client.jar坐标为:

<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-client</artifactId> <version>1.2.0</version> </dependency> 

3.apollo-core.jar坐标为:

<dependency> <groupId>com.ctrip.framework.apollo</groupId> <artifactId>apollo-core</artifactId> <version>1.2.0</version> </dependency> 

这些在我们的源码包里面分别存在于:

Apollo配置中心

 

 但是在编译之前先要增加apollo-env.properties文件,在client和core中:

C:\Users\3\Desktop\apollo-1.2.0\apollo-core\src\main\resources\apollo-env.properties 

apollo-env.properties的内容如下:各个环境配置的地址。

dev.meta=http://192.168.202.218:18080 fat.meta=http://192.168.202.219:18080 uat.meta=http://192.168.202.220:18080 pro.meta=http://192.168.202.221:18080

 然后在C:\Users\3\Desktop\apollo-1.2.0\scripts 下执行:

.\build.bat 

编译好之后,上传至nexus上就可以了。

4.3、java客户端使用

在启动Spring Boot的java文件中添加注解:

@EnableApolloConfig 

通过@Value注解即可获取到值 或者 可以以类的方式作为bean加载入Spring,例如

 @EnableApolloConfig @Configuration Class A { @Bean public getB() { return new B(); } } Class B { private int x; public void setX(int x) { this.x = x; } public int getX() { return this.x; } } 

说明:其他的配置信息,请看官网(https://github.com/ctripcorp/apollo)下:Deployment -> 分布式部署指南

 

  • 海报
海报图正在生成中...
赞(0) 打赏
声明:
1、本博客不从事任何主机及服务器租赁业务,不参与任何交易,也绝非中介。博客内容仅记录博主个人感兴趣的服务器测评结果及一些服务器相关的优惠活动,信息均摘自网络或来自服务商主动提供;所以对本博客提及的内容不作直接、间接、法定、约定的保证,博客内容也不具备任何参考价值及引导作用,访问者需自行甄别。
2、访问本博客请务必遵守有关互联网的相关法律、规定与规则;不能利用本博客所提及的内容从事任何违法、违规操作;否则造成的一切后果由访问者自行承担。
3、未成年人及不能独立承担法律责任的个人及群体请勿访问本博客。
4、一旦您访问本博客,即表示您已经知晓并接受了以上声明通告。
文章名称:《Apollo配置中心》
文章链接:https://www.456zj.com/38223.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址