关于java:Apollo本地快速部署

4次阅读

共计 2588 个字符,预计需要花费 7 分钟才能阅读完成。

GitHub 我的项目地址

Gitee 我的项目地址

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

Apollo 与 properties 配置文件的性能雷同,都能够设置参数。Apollo 的长处在于,能够实时批改参数的值,而不须要重启我的项目。

1 环境筹备

须要 Java 1.8 及以上,MySQL 5.6 及以上的版本。

MySQL 装置配置形式:https://mp.weixin.qq.com/s/IS…

如果只是本地测试的话,举荐应用 GitHub 上的开源我的项目 Apollo Quick Start;

安装包下载地址:https://pan.baidu.com/s/11dYV…

提取码: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.sql
source 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 info
apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=root
apollo_config_db_password=root

# apollo portal db info
apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=root
apollo_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.log
Started [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.log
Started [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

4 应用 Apollo

点击创立利用:

输出自定义的参数:

即可创立胜利。而后在新创建的利用中减少配置:

5 我的项目实例

下载一个测试项目 learn-apollo

GitHub 地址:https://github.com/Snowstorm0…

Gitee 地址:https://gitee.com/Snowstorm0/…

在运行我的项目之前须要批改 resource/application.properties 中 apollo.meta 的值,将 localhost 替换为 apollo 的地址,端口号为 Eureka 的端口号(默认为 8080)。

新增并公布如下三个参数:

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

 
 

学习更多编程常识,请关注我的公众号:

代码的路

正文完
 0