Apollo配置中心,让配置“智能”起来

本文介绍了Apollo配置中心,一个由携程开发的开源配置管理工具。Apollo提供了集中化的配置管理,支持动态配置更新,适用于多环境、多集群的管理。文章详细讲解了Apollo的安装部署过程,包括获取安装包、创建数据库、修改配置和部署服务。此外,还讨论了为何使用配置中心,以及Apollo相对于其他方案的优势。文章进一步展示了如何在SpringBoot应用中整合Apollo,并提供了配置步骤。最后,探讨了Apollo的架构设计,包括基础模型、服务模块、配置推送机制和高可用性。文章适合对配置中心感兴趣的开发者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

思维导图

文章已收录Github精选,欢迎Starhttps://github.com/yehongzhi/learningSummary

一、概述

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

目前Apollo在github有22.6k颗星,在官网登记的使用的公司有451家,算是很流行的配置中心的框架技术。所以接下来跟着我一起学习Apollo配置中心吧。

二、为什么使用配置中心

首先,没有配置中心之前传统的配置都是写在配置文件中,比如各种yml、perproties、xml文件。

写在各种文件里最大的问题在于如果需要改配置信息,需要重新部署发布应用才能生效,这是第一个问题。

后面为了做到动态读取配置信息,后面有人改进一下把配置信息存储在数据库的一张表,程序读取表中的配置信息,这种方式很多公司都还在使用,因为简单,而且灵活(修改配置只需要执行个SQL语句,不需要重新部署发布)。但是也不是最完美的,因为缺少了权限控制,没有管理界面进行统一配置,没有历史版本的配置信息,不支持回滚(防止误操作)

实际上配置中心在市面上已经有很多,比如Nacos、Consul、spring-cloud-config、Apollo等等。

相对其他的,我觉得选择Apollo的原因是,界面比较美观,操作简便,部署简单,依赖较少,开箱即用。

三、安装部署

首先要讲一下Apollo部署三个服务apollo-configservice,apollo-adminservice,apollo-portal,后面我讲架构设计时会讲一下这三个服务是用来干嘛的。

这里部署建议不要用官网的Quick Start,我一开始使用QuickStart的方式,搞了几个钟头搞不定,总是在Eureka上多了一个UNKONWN的服务,然后又无法访问8070的管理界面,心态直接崩溃。上github找了一下,如下:
在这里插入图片描述
作者在下面的回答是这样的。
在这里插入图片描述
这个问题发现不止有一个issue(#2931)反映了,但是没有解决,作者建议使用标准部署。

所以接下来就讲标准部署,也就是分布式部署,有耐心的同学也可以直接去github看作者写的分布式部署指南

先介绍一下环境依赖,Linux服务器(建议CentOS7),MySQL(版本要求:5.6.5+),部署的服务器需要安装JDK环境(java 1.8+)。

这里有两种安装方式,一种是下载安装包,另一种是通过源码构建。一般如果不需要对Apollo定制开发,直接用安装包部署即可。我这里演示的就是安装包部署的方式。

3.1 获取安装包

先到官网下载安装包。
在这里插入图片描述
下载后解压,如下:
在这里插入图片描述

3.2 创建数据库

使用MySQL数据库(版本要求:5.6.5+)。

3.2.1 创建ApolloPortalDB数据库

使用github上面的sql脚本创建ApolloPortalDB数据库,导入相关的表以及数据。
在这里插入图片描述

3.2.2 创建ApolloConfigDB数据库

使用github上面的sql脚本创建ApolloConfigDB数据库,导入相关的表以及数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值