上一篇:
上一篇已经知道Apollo是什么东西了,接下来实践一下
目录
一、创建应用
1、 新增配置
2、创建Namespace
3、同步配置
4、灰度发布
添加灰度配置项 编辑
配置灰度规则
二、删除应用、集群、appNamespace
三、springBoot整合Apollo
1、maven依赖
2、springboot.application配置
3.启动类上添加@EnableApolloConfig
4、测试类,实时获取配置信息
一、创建应用
登录http://localhost:8070/
用户名/密码:apollo/admin
1、 新增配置
点击创建完成自动进入配置页面,添加配置项,比如我这里添加一个msg=high
2、创建Namespace
3、同步配置
apollo具有同步集群配置的功能,避免了繁琐的添加配置那样的重复工作,可以将现有的配置同步到新建的集群当中。还支持同步到不同环境下。
4、灰度发布
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。
对于一些对程序有比较大影响的配置,可以先在一个或者多个实例生效,观察一段时间没问题后再全量发布配置。
对于一些需要调优的配置参数,可以通过灰度发布功能来实现A/B测试。可以在不同的机器上应用不同的配置,不断调整、测评一段时间后找出较优的配置再全量发布配置。
添加灰度配置项
配置灰度规则
配置那些IP使用灰度发布的配置
全量发布:更改的配置在使用一段时间没问题后,使用全量发布配置
放弃灰度:更改的配置在使用一段时间有问题,可以使用放弃灰度功能
二、删除应用、集群、appNamespace
三、springBoot整合Apollo
1、maven依赖
<dependency>
<groupId>com.ctrip.framework.apollo</groupId>
<artifactId>apollo-client</artifactId>
<version>1.3.0</version>
</dependency>
2、springboot.application配置
(1)设置应用id
在Spring Boot中使用 apollo 配置比较方便,我们只需要在对应的配置(yml或者properties)中设置 apollo的(appid和meta)以及命名空间就行
#apollo配置中心
#app.id apollo客户端配置的APPID:high-apollo
#Apollo.meta:客户端地址
#apollo.bootstrap.enable:是否开始apollo配置预加载功能
#apollo.bootstrap.namespaces:指定命名空间
#apollo.bootstrap.eagerLoad.enabled 是否开始apollo支持日志级别的加载时机
app:
id: high-apollo
apollo:
bootstrap:
enabled: true
namespaces: application , apollo-public , high-apollo-test
eagerLoad:
enabled: true
meta: http://localhost:8080
3.启动类上添加@EnableApolloConfig
4、测试类,实时获取配置信息
@RestController
public class ApolloTestController {
@Value(value = "${msg}")
private String name;
@RequestMapping("test")
public String test(){
return "hello Apollo "+name;
}
}
测试你可以选择postman,当然也可以自己集成一下swagger,很简单