Apollo客户端组件
组件编码
hzero-starter-apollo-config
以 hzero替换默认猪齿鱼config 为例来介绍它的使用
替换步骤简介
- 去除hzero默认的配置中心hzero-config
- 加入apollo-config相关依赖
- 加入apollo-config相关配置
依赖
<dependency>
<groupId>org.hzero.starter</groupId>
<artifactId>hzero-starter-apollo-config</artifactId>
</dependency>
配置
第一步
根据apollo文档介绍,必须在资源根路径下/META-INF文件夹下存在app.properties文件,并指定appId。
appId=hzero-gateway
第二步
由于apollo能支持加载bootstrap配置前的配置,所以需要这样去指定:
【开发应用时】
idea界面,在运行按钮左侧处编辑运行配置,在VM Options一栏填入-Denv=dev -Dapollo.meta=http://localhost:8080
【部署应用时】
在java -jar app.jar -Denv=dev -Dapollo.meta=http://localhost:8080
以上作为示例,请以真实环境配置。
第三步
在引导程序上开启apollo配置,并指定namespaces等配置
@EnableHzeroApolloConfig({
"application",
"application2"
})
关于@EnableHzeroApolloConfig的使用,与@EnableApolloConfig使用方式完全一致。
为了便于hzero对apollo-client的增强,所以使用了新的注解@EnableHzeroApolloConfig代替原生的@EnableApolloConfig。
第四步
在bootstrap.yml文件中可以增加如下配置:
spring:
cloud:
apollo:
config:
# 默认开启
enable: true
# 监听配置, 可以筛选监听key
listener:
interestedKeys: com.xcxcxcxcx.name
interestedKeyPrefixes: zuul.
这两条配置表示对apollo监听的配置的筛选,如:
interestedKeyPrefixes=zuul.表示仅监听key为“zuul.”开头的配置
interestedKeys=com.xcxcxcxcx.name表示仅监听key为“com.xcxcxcxcx.name”的配置
Note
hzero-starter-apollo-config基于1.4.0的apollo-client实现的,如果使用apollo-server版本过低,可能出现兼容性问题。