千家信息网

如何理解分布式结构下,服务部署发布

发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,这篇文章主要介绍"如何理解分布式结构下,服务部署发布",在日常操作中,相信很多人在如何理解分布式结构下,服务部署发布问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何理
千家信息网最后更新 2024年11月25日如何理解分布式结构下,服务部署发布

这篇文章主要介绍"如何理解分布式结构下,服务部署发布",在日常操作中,相信很多人在如何理解分布式结构下,服务部署发布问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何理解分布式结构下,服务部署发布"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、服务发布简介

分布式系统架构下,服务发布是一件很麻烦的事情,特别是在构建自动发布流程和灰度测试的策略两个核心方面。通常情况下如果不涉及数据层面的灰度流程,服务可以灰度上线,或者滚动上线,这两种方式很常用;如果涉及到数据灰度,则可能需要中间服务做不同版本数据之间追平,或者停机维护一次性处理好数据和上线问题,不过后面这种方式风险较大。

二、蓝绿部署

新版本上线的时候,并不停掉老版本,新旧两个版本同时运行,通常还会在负载均衡的策略上倾向于旧版本服务处理请求,这样新版本就有一个执行的观察期过渡期,等到新版本平稳运行一段时间后,再把请求都发到新版服务上,旧版本服务完成下线。这种方式在分布式架构下很少使用,对服务器要求过高。

三、滚动发布

滚动发布可以避免蓝绿部署的服务器资源占用问,首先发布一台新版本服务,然后停掉一台老版本服务,新版服务经过观察之后,再逐步替换掉所有老版本的服务,这样服务的环境变动比较频繁,相对不稳定。

四、灰度发布

上述两种方式在普通业务场景下都还算好操作,分布式系统下的灰度发布复杂程序相对高很多,基础流程如下:

新版本上线,可能涉及分布式下多个灰度服务,因此在服务在整个链路上分发时,都要判断下个请求是路由到正常服务还是灰度服务,还要对灰度服务做请求的权重控制,不能让灰度服务处理大量的请求。

实际策略:在实际的分布式系统灰度发布流程,通常会采用如下一个策略:

  • 配置一个灰度是否开启的标识;

  • 配置一批灰度账户,通常内部人员;

  • 配置灰度服务版本标识;

  • 请求在链路执行时,判断灰度是否开启;

  • 判断当前用户身份是否是灰度测试账号;

  • 获取当前可以请求的服务列表;

  • 根据灰度服务版本选择请求的具体服务;

这个流程非常的复杂,需要很多自定义的策略,还要熟悉分布式框架的底层API原理,要二次重写来适配灰度策略,设计重写原生API还容易触发一些惊喜问题。

五、数据库灰度

如果说最难处理的灰度模式是什么,就是数据库的版本灰度问题,通常业务对数据库改造升级,实际都是通过停机维护来处理的,可能很多开发都经历过,发布停服公告,然后在指定时间内把数据全部追平或者二次搬运,再重新提供服务。但是总有些业务场景是不能停机维护的,处理灰度数据的基本策略如下:

该模式中,除了正常的灰度流程之外,需要在灰度数据库和正常数据中间提供一个数据调配服务,用来解决如下问题:灰度数据库缺失数据,需要临时从正常库拉取,灰度版本失败,新数据需要重新整合写入原本正常库;灰度版本成功,旧版数据迁移等;最终保证数据的平稳升级。

六、源代码地址

GitHub·地址https://github.com/cicadasmile/data-manage-parentGitEE·地址https://gitee.com/cicadasmile/data-manage-parent

到此,关于"如何理解分布式结构下,服务部署发布"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

服务 灰度 数据 版本 分布式 策略 流程 处理 数据库 问题 结构 方式 学习 业务 地址 实际 系统 配置 复杂 平稳 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 软件开发培训工资一般多少 服务器双网卡合并 网络安全突发事件最高几级 抖音搜索排名软件开发 网络安全培训班的重要性 一直播放网络安全手抄报 科技信息公司+互联网 服务器性能评价 ps4服务器怎么选择 软件开发文档包括哪些内容 镇乡网络安全工作报告 腾达拓展起登陆入口找不到服务器 服务器桌面的分辨率无法修改 苏亚星多媒体教学软件服务器设置 浏览器ip地址访问服务器 数据库中注册日期用什么类型 数据库给个地址怎么用 互联网模式下的金融科技 东丽区企业网络技术创造辉煌 数据库同时储存在两个位置 计算机网络安全和大数据 云服务器可以进行快手直播吗 南京云主机服务器厂家 保定哪个软件开发最好 大学周记网络技术 农药对鱼的毒性数据库 阿里云服务器没有桌面 数据库给个地址怎么用 大专生网络技术怎么提升 软件开发能力等级评定
0