System Design Spring cloudJava后台

基于Springboot的Apollo基本使用(一)

2018-09-11  本文已影响790人  kidd卡盟

基于Springboot的Apollo基本使用(一)

1.Apollo简介

项目组最近的项目都是使用springcloud微服务开发,整个微服务框架中分布式的系统服务、集群等等都非常的多。

每一个服务都有着自己的配置(包括参数配置、服务器地址配置、功能开关等都能),当配置需要修改的时候就显得异常的麻烦,传统的通过配置文件、数据库配置完全不能满足要求。

在这种情况下,诞生了很多的统一配置的服务,虽然springcloud有自己的config配置中心,但是和携程的apollo相比还是太弱了,对比之后我们使用了Apollo。

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

github上携程开发人员对Apollo做了特别细致的介绍,但是对于我们只使用springboot进行开发的项目来说,其实只用到了里面一小部分内容。

因此我主要将Apollo和Springboot相关的内容整理出来,本文首先对Apollo进行QuickStart简单入门介绍以及基于Springboot框架的使用。

1.1Apollo配置中心基础模型

  1. 开发人员在配置中心对某些应用的配置(就是一些键值对的信息)进行修改
  2. 配置中心通知客户端进行配置更新(需要注册监听事件)
  3. Apollo客户端(应用程序)从配置中心拉取更新最新配置
basic-architecture.png

1.2Apollo的总体设计

overall-architecture.png

上图是Apollo的总体设计,从下往上看:

1.3Apollo配置分类

因为对于不同的应用,在不同的环境(开发、测试)、不同的集群(华东、华北)、不同的命名空间(例如springboot的application.property文件、你自己自定义的myappconfig.property),配置都有可能不同。

所以Apollo支持了4个维度管理Key-Value格式的配置(这些都是可以配置的):

2.Apollo QuickStart

携程的开发人员为了让大家几分钟快速上手Apollo配置中心,已经准备了一套安装包,大家按照教程马上就能部署好了(注意windows环境要安装能运行bash脚本的软件如gitbash)——》QuickStart github地址

安装包在不同的端口安装了配置中心的不同服务:

1. 打开 http://localhost:8070 进入配置中心就可以对各种应用进行配置(修改键值对)

image

image

2. Springboot客户端连接Apollo配置中心

使用Springboo客户端连接Apollo特别的简单,只需要几步:

例如在我的quickstart测试环境中我在application.properties文件中只要如下配置就行了:

server.port=9017
app.id=apolloapp
apollo.meta=http://127.0.0.1:8080
    <dependency>
        <groupId>com.ctrip.framework.apollo</groupId>
        <artifactId>apollo-client</artifactId>
        <version>1.0.0</version>
    </dependency>
上一篇 下一篇

猜你喜欢

热点阅读