栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

参照阿波罗自己实现的分布式配置中心

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

参照阿波罗自己实现的分布式配置中心

本来想录制一个视频的,但是试了多次 还是对视频效果不太满意,主要是嗓音不好。表达也不十分清楚,于是记录成文章发表出来。

课程目录:

  1. 什么是分布式配置中心
  2. 配置中心特点 配置中心存放哪些内容
  3. Apollo分布式配置中心介绍
  4. Apollo架构图
  5. 实现分布式配置中心的原理和关键步骤
什么是分布式配置中心?

        配置信息和应用程序分离。

配置中心特点
  1. 有单独的后台管理页面,供用户新增修改配置信息
  2. 配置服务如果挂了,有相关的容灾方案(集群)
  3. 支持不同环境下的配置信息(我们线上的配置一般是分不同的环境配置不同的值)
  4. 相关权限管理(只有负责人才能对配置进行update)
  5. 简单易用(有对应的SDK支持或api支持)
配置中心存放哪些内容

开关 限流值 系统配置值 请求ip 端口

携程Apollo配置中心介绍

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

携程Apollo 架构图

  1.  Apollo启动后,Config/Admin Service会自动注册到Eureka服务注册中心,并定期发送保活心跳。
  2. Apollo Client和Portal管理端通过配置的Meta Server的域名地址经由     Software Load Balancer(软件负载均衡器)进行负载均衡后分配到某一个Meta Server
  3. Meta Server从Eureka获取Config Service和Admin Service的服务信息,相当于是一个Eureka Client
  4. Meta Server获取Config Service和Admin Service ( IP+Port )失败后会进行重试
  5. 获取到正确的Config Service和Admin Service的服务信息后,     Apollo Client通过Config Service为应用提供配置获取、实时更新等功能;     Apollo Portal管理端通过Admin Service提供配置新增、修改、发布等功能
分布式配置中心的过程演示-主要功能

分布式配置中心的过程演示-服务端提供的服务          spring常见接口

 

  1. 通过给Environment环境变量的 propertySources属性添加PropertySource(ConfigPropertySource),且放在首位,     覆盖原来的@Value注解属性值。
  2. ConfigPropertySource中有从远程获取属性值的方法实现,在客户端启动时,根据属性名从分布式配置中心服务端查询属性值。
  3. 长轮询监控 服务端属性值变化。
  4. 一旦有变化 使用反射,修改 客户端bean属性,重新赋值。 长轮询请求时,服务端怎么判断时返回200,还是返回304? 客户端记录namse属性的版本号,初始是-1,当首次查询后,服务端返回版本号。 一旦服务端版本号,有变化。客户端下次请求时,使用旧的版本号 和服务端新的版本号 不相等, 则查询新的版本数据,状态返回200。如果相等 ,则状态返回304.

视频学习和演示地址 

自己开发的分布式配置中心的效果演示

源代码地址 

 https://gitee.com/qylcode/qyl-cloud-server.git

 https://gitee.com/qylcode/qyl-cloud-client.git

学习的参考资料

http://t.zoukankan.com/wuyongyin-p-13456777.html https://blog.csdn.net/qq_39530821/article/details/123930397 http://c.biancheng.net/view/5480.html

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1027233.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号