Apollo本地快速部署|播报

GitHub项目地址:https://github.com/Snowstorm0/learn-apollo


(资料图片)

Gitee项目地址:https://gitee.com/Snowstorm0/learn-apollo

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

Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。

1 环境准备

需要 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

2 SQL 导入

下载并解压安装包 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;

有以下输出,表示导入成功。

3 启动 Apollo

编辑 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。

4 使用 Apollo

点击创建应用:

输入自定义的参数:

即可创建成功。然后在新创建的应用中增加配置:

5 项目实例

下载一个测试项目 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

标签:

最近更新

7999元!华为Mate 60 Pro 1TB版本首次上架:今晚开抢
2023-09-09 14:47:38
极品飞车19豪华版送的车怎么领(2023年09月09日极品飞车19产品激活码)
2023-09-09 12:49:48
从1-0到2-0!国足9胜马来西亚,再相遇,输球没法交代,CCTV5直播
2023-09-09 10:45:29
空气能不制热一直38度(空气能不制热一直38度怎么回事)
2023-09-09 09:20:50
@40岁以上人群可接种!国产带状疱疹疫苗来西安了
2023-09-09 07:51:17
美元指数持续走强 人民币汇率调整压力加大
2023-09-09 04:45:41
再见拜仁!加薪1000万,也要走,转投皇马,赫内斯没辙,1亿送走
2023-09-08 22:54:25
国足备战热身赛,主帅扬科维奇:代表国家就要拼搏到底
2023-09-08 21:09:45
赛特股份无法或拒绝履行信息披露义务 可能导致触发强制终止挂牌
2023-09-08 20:15:28
《奥比岛》「快乐节」版本开启!小精灵玩法更新、蘑菇主题时装上线
2023-09-08 19:19:34
新湖瑞丰廖翔云:部分贸易企业已运用场内外期权策略组合来进行风险对冲
2023-09-08 18:11:29
听说微信里已经有大模型了
2023-09-08 17:01:08
央视《焦点访谈》关注服务贸易发展新特征 能链智电发力交通能源数智化
2023-09-08 15:41:32
品渥食品(300892):该股换手率大于8%(09-08)
2023-09-08 14:44:10
从乡村篮球赛看浙江乡村体育蓬勃发展势头
2023-09-08 13:01:39
人工智能赚钱了 OpenAI开发者大会将于11月6日举办
2023-09-08 11:51:41
大脑深处植入电极,复旦儿科专家精准消除 8 岁患儿行走烦恼
2023-09-08 10:46:12
甲状腺激素水平异常 全身器官都会受牵连
2023-09-08 10:02:57
君正集团:9月7日融资买入351万元,融资融券余额6.58亿元
2023-09-08 09:19:56
北京卫视湖南卫视等官微删除宋祖儿相关微博
2023-09-01 09:52:58
江苏宜兴推出政策矩阵引育人才
2023-09-01 09:01:29
古特雷斯称已向俄方提交恢复黑海港口农产品外运协议具体建议
2023-09-01 08:30:54
震惊!上汽集团上半年营收、利润竟没下滑,它干了啥?
2023-09-01 06:44:50
电影百万英镑(关于电影百万英镑的基本详情介绍)
2023-09-01 03:52:48
海南公开宣判!对罪犯陈某民、陈某鹏执行死刑
2023-08-31 22:38:35
存款挂牌利率再下调?记者走访南京部分银行网点
2023-08-31 21:03:09
月面着陆器具有高安全、适应月面环境能力强等特点
2023-08-31 19:40:47
ST鹏博士:实控人收到证监会立案告知书
2023-08-31 18:07:34
这就是 Galaxy S24 Ultra 采用平面显示屏的原因
2023-08-31 17:10:31
降低法律咨询服务门槛,「LegalNow」推出AI法律协议咨询产品|早期项目
2023-08-31 15:54:22