• CSDN博客地址(关注,点赞)
  • 人工智能推荐
  • GitHub(Star,Fork,Watch)

【前言】

在上一篇博文《灰度实战(一):Apollo配置中心(1)》中讲解了如何搭建Apollo以及创建配置文件,在本篇博文中为大家带来程序如何通过Apollo读取配置文件,以及配置中心一大亮点---配置修改后实时推送到应用端。

【实时推送演示】

一、程序连接Apollo配置

1、在项目pom中增加Apollo客户端依赖

<!-- apollo-client -->
<dependency><groupId>com.ctrip.framework.apollo</groupId><artifactId>apollo-client</artifactId><version>${apollo-client.version}</version>
</dependency>

2、启动配置文件(application.yml)修改为(参数项说明参考:Java客户端使用实例)

app:id: ${app_ip:gray_apollo}
apollo:cluster: ${apollo_cluster:default}bootstrap:enabled: ${apollo_bootstrap:true}name  spaces: ${apollo_namespaces:grayapollo}meta: ${apollo_meta:http://127.0.0.1:8080}

3、启动项目后,可以在Apollo配置中心看到注入一个实例

二、@value类型,程序演示

1、演示代码

package com.zhanghan.grayapollo.controller;import com.zhanghan.grayapollo.util.wrapper.WrapMapper;
import com.zhanghan.grayapollo.util.wrapper.Wrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;import java.util.HashMap;
import java.util.Map;@RestController
@Api(value = "演示Apollo控制器",tags = {"演示Apollo控制器"})
public class DynamicController {@Value("${zh.int}")private Integer zhInt;@Autowiredprivate RedisTemplate<String, String> strRedisTemplate;@ApiOperation(value="测试通过@value注入数据",tags = {"演示Apollo控制器"})@RequestMapping(value = "/test/value", method = RequestMethod.POST)public Wrapper testValue() {Map<String, Object> map = new HashMap();map.put("zhTest", zhInt);return WrapMapper.ok(map);}
}

2、启动项目后,在swagger中访问

3、在Apollo上修改http://zh.int的值

4、在Apollo上发布此次修改

5、查看项目日志(发现值已经推送到程序)

6、再次通过swagger访问此接口(惊奇发现程序值已修改为8)

7、小结:

以上为大家演示,在不用重启程序情况下,让配置文件改变@value读取值进行更改。

三、项目地址

灰度实战:https://github.com/dangnianchuntian/gray

【总结】

1、本节第一部分为大家演示Apollo动态更新@value值,这个功能应用特别实用,比如一些阈值的设定等等。

2、下一篇为大家演示如何接收Apollo动态更新连第三方中间件的连接池(以redis连接池为例)。

灰度值取值范围_灰度实战(二):Apollo配置中心(2)相关推荐

  1. 灰度实战(三):Apollo配置中心(3)

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 在上一篇博文<灰度实战(二):Apollo配置中心(2)>中讲解了Apol ...

  2. 灰度实战(四):Apollo配置中心(4)

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 在上一篇博文<灰度实战(三):Apollo配置中心(3)>中讲解了Apol ...

  3. Session存值取值问题及取不到值的问题

    Session存值取值问题及取不到值的问题 一.存值(相当于map) request.getSession().setAttribute("key", value); 二.取值 r ...

  4. apollo 配置中心_配置中心——Apollo小记

    一.什么是配置 配置是程序运行时,动态调整行为的能力. 配置有以下属性: 配置是独立于程序的只读变量 同一份程序在不同的配置下才会有不同的行为,而且配置对于程序来说是只读的,所以程序可以通过读取配置来 ...

  5. apollo配置中心的组件_如何使用Apollo的全新查询组件来管理本地状态

    apollo配置中心的组件 Note: This article deals with utilizing Apollo's brand new Query and Mutation componen ...

  6. apollo 配置中心_.NET Core 下使用 Apollo 配置中心

    " Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限.流程治理等特性,适用于微服务配置 ...

  7. 灰度值取值范围_第三章 灰度变换与空间滤波-(三)直方图之直方图均衡

    听说:单反穷三代,摄影毁一生. 本节目录 3.1 直方图均衡 3.2 直方图匹配(规定化) 3.3 局部直方图处理 3.4 图像增强中使用直方图 真是感谢雷神,举例子还是以灰度图为主,减负了不少.是因 ...

  8. 灰度值取值范围_一幅灰度图像,用8bit量化,取值范围为[0,255],其中0表示(),255表示()。...

    一幅灰度图像,用8bit量化,取值范围为[0,255],其中0表示(),255表示(). 答: 纯黑色 纯白色 <董西厢>的内容中有一些是征引的<莺莺传>.() 答:√ 智慧职 ...

  9. 灰度实战(一):Apollo配置中心(1)

    强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 业务由原来一个国家扩展成多个国家,自己维护的消息平台做了些改造来支持多国家的需求:随着 ...

最新文章

  1. Powercli 批量获取vmhost 时间
  2. confluence正常安装网页报错_NAS折腾手记1:在OMV5上安装ZFS On Linux的正确步骤
  3. Java多线程(6)--Callable接口创建线程
  4. 框架学习 Spring之依赖注入DI
  5. 在下列计算机应用项目中,属于过程控制应用领域的是,计算机基础试题.ppt
  6. Windows平台下Go语言的安装和环境变量设置
  7. python3发布时间_什么时候python 3 才能有更好的支持呢?
  8. 简要说明下maven的作用_Maven资料库–简要指南
  9. [历朝通俗演义-蔡东藩-前汉]第008回 葬始皇骊山成巨冢 戮宗室豻狱构奇冤
  10. Paypal支付(一)MPL真正的快捷支付
  11. 文字处理技术:复杂的行宽计算
  12. mysql event查询_Mysql中Event的一些测试
  13. 一周信创舆情观察(12.7~12.13)
  14. linux常识 菜鸟教程
  15. echarts3 地图应用 给背景地图上色(2)附:世界各大城市经纬度
  16. 怎么查看笔记本内存条型号_怎么看电脑内存条型号 电脑内存条型号查看方法【详解】...
  17. 凛冬至送温暖,无价资源免费送
  18. ewb交通灯报告和文件_基于ewb平台的交通灯电路设计.doc
  19. idea快捷键 常用
  20. Python 鸭子类型的理解

热门文章

  1. etcd 在超大规模数据场景下的性能优化
  2. macOS 开启 VNC 远程桌面和 SSH 服务
  3. DRBD + heartbeat 介绍及安装测试
  4. Android应用开发—TextView的动态创建
  5. Microsoft StreamInsight 构建物联网
  6. 2008秋-计算机软件基础-第四章习题参考答案 P131 ,习题6之一
  7. html音乐唱片自动转,HTML5音乐播放器(四):播放列表与播放方式
  8. Java不同场景加载不同类_[改善Java代码]不同的场景使用不同的泛型通配符
  9. bios get serialnumber 无法启动服务_联想笔记本BIOS升级教程
  10. python 内存回收机制_Python垃圾回收机制是什么