比如zookeeper的地址等通过命名空间(namespace)可以很方便地支持多个不同应用共享同一份配置,同时还允许应用对共享的配置进行覆盖
所有的配置发布都有版本概念,从而可以方便地支持配置的回滚
这就要求Apollo对外部依赖尽可能地少
目前唯一的外部依赖是MySQL,所以部署非常简单安装环境:Linux 这里就不细致讲解了...
apollo-quick-start-1.5.0.zip
ApolloPortalDB
和 ApolloConfigDB
本人的linux 已经装好了mysql 并且允许远程配置(linux MySQL与 windows 远程通信连接! )
开启mysql远程配置: 为了方便操作linux的mysql 连接windows的数据库使用!
linux中操作!
#事前建议关闭防火墙!
#查看防火墙状态
firewall-cmd --state
#停止firewall
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service
#启动mysql mysql目录下:
bin/mysqld_safe --user=mysql & #这里回车后会停留,直接再按回车即可
#登录mysql
bin/mysql -uroot -p
#mysql远程配置:
# 用户 密码
mysql > grant all privileges on *.* to root@'%' identified by 'ok' with grant option;
mysql > flush privileges; #刷新
#退出
mysql > exit
#在线安装一些配置, 需要联网
yum install zip unzip curl
Windows 测试远程连接! 连接上了就可以远程操作数据库了!
阿波罗安装目录下: copy 执行!
注意安装目录,根据自己情况决定!
工具上传至,Linux中
解压缩
upzip appllo-quick-start-1.5.0.zip
rm -rf appllo-quick-start-1.5.0.zip
方便操作而已,可以不干!
``修改配置文件 demo.sh
阿波罗配置数据库文件!
vi demo.sh
设置访问数据库的密码…
直接安装目录下:./demo.sh start
启动时候比较慢, 因为内部要启动两个应用…
接下来就可以进行访问了!
输入默认用户名密码apollo/admin即可登录到应用中
controller .yml 测试!
pom.xml
<!-- 引入阿波罗依赖! -->
<dependencies>
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-client</artifactId>
<version>1.1.0</version>
</dependency>
</dependencies>
.yml
#阿波罗配置
name: aaa # 用于测试更改的属性!
#阿波罗配置!
apollo:
bootstrap:
enabled: true
meta: http://192.168.1.110:8080
app:
id: apollo # 输入创建的appid
新增 修改 提交 发布!
大致分为三个板块
其中像是eureka、gateway等就是独立服务,
而Netflix Fegin就是api主要做程序之间通讯的对外暴露接口以及熔断处理等操作,而server主要用作调用持久层、业务逻辑等。
相互嵌套依赖调用!...
注意依赖注解的使用即可: