Apollo配置中心(Springboot接入)

apollo

apollo是一个分布式配置中心(其实也是一个微服务项目)。

原理就是把配置文件中的key,value的值存到Apollo中,然后项目启动的时候从Apollo中读取

1、为什么使用apollo

在我们开发分布式微服务项目的时候,那些配置一旦变更,就需要重启服务,这样非常不友好。因此我们考虑动态更改配置文件当中的配置,所以把那些配置全部存放在apollo当中,这样就能达到动态的效果,并且不用重启服务。

2、主要功能

  • 能够集中式管理不同环境(environment)、不同集群(cluster)、不同命名空间(namespace)的配置。

    生产环境、预览环境、测试环境、开发环境

  • 用户在 Apollo 修改完配置并发布后,客户端能实时(1s)接收到最新的配置,并通知到应用程序。

  • 所有的配置发布都有版本概念,从而可以方便地支持配置的回滚。

  • 支持配置的灰度发布,比如点击发布后,只对部分应用实例生效,等观察一段时间,确定没问题后再推给所有应用实例。

  • 应用和配置的管理都有完善的权限管理机制,对配置的管理还分为编辑和发布两个环节,从而减少人为的错误。所有的操作都有审计日志,方便追踪问题。

  • apollo 出于通用性考虑,对配置的修改不会做过多限制,只要符合基本的格式就能够保存,可能有xml、json等格式。

3、Springboot集成apollo

(1)添加apollo依赖

(2)在yml中配置apollo

apollo.meta: Apollo 配置中心地址

apollo.bootstrap.enabled:是否开启 Apollo

apollo.cluster: 指定使用某个集群下的配置

apollo.autoUpdateInjectedSpringProperties: Spring应用通常会使用 Placeholder 来注入配置,如${someKey:someDefaultValue},冒号前面的是 key,冒号后面的是默认值。如果想关闭 placeholder 在运行时自动更新功能,可以设置为 false

apollo.appid:项目名称

apollo.environment:生产环境、预览环境、测试环境、开发环境

(3)在springboot启动类中添加注解@EnableApolloConfig

(4)使用apollo中配置的值

  1. 使用@Value(key)注解:

    @Value("${test-data}")
    
  2. 使用@ApolloConfig注解

    @ApolloConfig
    private Config testConfig;
    
    String property = testConfig.getProperty(key, null);
    

分布式阿波罗Apollo配置中心

SpringBoot 集成 Apollo 配置中心

springboot整合使用Apollo配置中心

apollo架构设计介绍

apollo获取配置

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值