原文链接
(资料图片)
GitHub项目地址
Gitee项目地址
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。
需要 Java 1.8 及以上,MySQL 5.6 及以上的版本。
MySQL安装配置方式:https://mp.weixin.qq.com/s/ISCjsIpmccVnuvXPkiFLMw
如果只是本地测试的话,推荐使用 GitHub 上的开源项目 Apollo Quick Start;
安装包下载地址:https://pan.baidu.com/s/11dYV5x1Qu7svEGaJLShoqQ?pwd=6666
提取码:6666
下载并解压安装包 apollo-quick-start-2.0.1.zip,可以看到目录下有 sql 文件夹,里面有 apolloconfigdb.sql 和 apolloportaldb.sql 两个文件,需要将这两个文件导入 MySQL中。
打开 win 菜单中的 MySQL 8.0 Command Line Client - Unicode 命令,
运行:
source D:\Apollo\apollo-quick-start-2.0.1\sql\apolloconfigdb.sqlsource D:\Apollo\apollo-quick-start-2.0.1\sql\apolloportaldb.sql
D:\Apollo
是我存放 apollo-quick-start-2.0.1 文件夹的路径。
即可完成导入。
导入成功后,可以通过执行以下sql语句来验证:
select `NamespaceId`, `Key`, `Value`, `Comment` from ApolloConfigDB.Item;
有以下输出,表示导入成功。
编辑 apollo-quick-start-2.0.1文件夹下的 demo.sh,修改 ApolloPortalDB 和 ApolloConfigDB 相关的数据库连接配置信息。
#apollo config db infoapollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8apollo_config_db_username=rootapollo_config_db_password=root# apollo portal db infoapollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8apollo_portal_db_username=rootapollo_portal_db_password=root
我的数据库的账号密码均为 root。
找到 demo.sh 的第72行,将 cd "${0%/*}"
改为当前路径:
cd D:\\Apollo\\apollo-quick-start-2.0.1\\
打开 win 菜单中的 Git Bash,运行 demo.sh 。
D:\\Apollo\\apollo-quick-start-2.0.1\\demo.sh start
等待运行一段时间后,当看到如下输出,就说明启动成功了。
==== starting service ====Service logging file is ./service/apollo-service.logStarted [10768]Waiting for config service startup.......Config service started. You may visit http://localhost:8080 for service status now!Waiting for admin service startup....Admin service started==== starting portal ====Portal logging file is ./portal/apollo-portal.logStarted [10846]Waiting for portal startup......Portal started. You can visit http://localhost:8070 now!
访问 http://localhost:8070 ,输入用户名 apollo,密码 admin,即可登录。
停止运行命令:
D:\\Apollo\\apollo-quick-start-2.0.1\\demo.sh stop
需要注意,apollo 端口号为8070,但在 Java 工程的 properties 中,apollo.meta
设置的端口号应为 Eureka 的端口号8080。
点击创建应用:
输入自定义的参数:
即可创建成功。然后在新创建的应用中增加配置:
下载一个测试项目 learn-apollo
:
GitHub地址:https://github.com/Snowstorm0/learn-apollo
Gitee地址:https://gitee.com/Snowstorm0/learn-apollo
在运行项目之前需要修改 resource/application.properties 中 apollo.meta 的值,将 localhost 替换为 apollo 的地址,端口号为 Eureka 的端口号(默认为8080)。
在 Apollo 中新增并发布如下三个参数:
learn-apollo
是一个定时任务,可以每隔5秒输出一次apollo的参数信息。
运行该项目,输出:
paramStr:str1
然后在apollo中修改参数的值,将str1
改为str2
。
不需要重启项目,此时项目会输出参数更新的日志信息:
[Apollo-Config-1] c.f.a.s.p.AutoUpdateConfigChangeListener : Auto update apollo changed value successfully, new value: paramStr7, key: param.paramStr, beanName: myService, field: com.spring.boot.service.MyService.paramStr
项目的输出也变了:
paramStr:str2
标签:
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化...
地产修复已现疲态?长江证券首席经济学家伍戈:积压刚需仍在释放,...
新华社北京3月23日电(记者侯雪静)中华全国供销合作总社理事会副主...
阿巴特开发了三拓XSR概念,以纪念雅马哈XSR900阿巴特摩托车的发布。...
1、接财神是中国民间古老的传统节日习俗。因为中国民间传说正月初五...
直播吧3月24日讯名记Woj今日在节目中谈到了詹姆斯的复出时间表。据...
比亚迪今日宣布:全新的云辇系统即将发布。据有关信息透露,该商标...
魅族20系列给了自己的定位,autophone手机,也就是无界的思路。这个...
格灵深瞳3月23日大宗交易平台出现一笔成交,成交量10 00万股,成交...
1、2000年,刘涛开始接拍各种类型的广告,并自费在广东外语外贸大学...
和胜股份(002824)03月23日在投资者关系平台上答复了投资者关心的问题。
伊丽莎白二世是英国历史上在位时间最长的郡主,并且她时尚的外观一...
3月21日,在宝丰县石桥镇竹园村的草莓大棚,只见一畦畦草莓长势喜人...
《小小梦魇》开发商Tarsier工作在推特上公布了一张新图,并配文“Ne...
石景山15家定点零售药店实现刷“码”购药!名单一览
2023年03月23日临近13时02分,中国卫通(601698)出现异动,股价大...
1、977这个数字实际上是对应“九宫格”键盘输入法上的词汇,每个人...
终于知道这几个键干嘛用的了
敏实集团(00425)显著走高,早盘上扬7 22%,现报20 35港元,成交...
1、我们青少年要树立全球意识和国家观念。2、坚持用世界的眼光看问...
随着社会越来越发达,大家都选择在网络上汲取相关知识内容,比如微
文丨王昱编辑丨何洋【亿邦原创】拼多多出海电商平台Temu的进军号角...
1、《穿越大臻》,作者:景明;2、《穿越隋唐》,作者:陌青;3、《...
当地时间3月22日,中国中央广播电视总台与今日俄罗斯国际媒体集团联...
1、如果是电脑主板接线的那块,vcc的v是voltage(电压),c是circuit...
新华传媒(600825)03月22日在投资者关系平台上答复了投资者关心的问题。
本文目录一览1,qq飞车怎么下载2,qq飞车手游在哪下载3,哪里可以下...
龙源电力(001289)03月22日在投资者关系平台上答复了投资者关心的问题。
江苏行政区划地图,江苏行政区划这个很多人还不知道,现在让我们一起...
财联社3月22日电,昨日市场传出消息称深圳建行原党委委员、副行长赵...