一、灰度发布系统简介灰度发布(又名金丝雀发布)是指在多版本之间,能够平滑过渡的一种发布方式。比如一个产品或服务迭代更新, 又要保证上线的影响范围,这个时候就需要一个灰度发布系统。这里我们主要介绍云客服产品的灰度发布实现方式。 灰度发布一般分为三部分:灰度部分用户请求至新版本或新服务测试、运营分析灰度效果紧急回退 或 全量灰度 我们将上面三部分从开始灰度到全量或回退或或称或称为灰度期。 l 灰度期:
Dubbo提供流量灰度的服务治理能力,可以在无需重启应用的情况下,配置标签路由规则和条件路由实现灰度发布Dubbo可以通过XML配置,注解配置,动态配置实现流量灰度,这里主要介绍动态配置的方式,其他配置方式请参考旧文档配置开始之前请确保成功运行Dubbo-Admin背景信息在产品开发中会遇到需求变化、版本迭代的场景,为了兼顾需求变化和系统稳定,发布要尽可能平滑,影响人群要由少到多,一旦有问题马上
转载 2024-06-29 18:00:26
131阅读
概述上两篇文章,我们讲解了灰度组件的需求和设计的思路。不管之前讲的限流、幂等框架,还是现在讲的灰度组件,功能性需求都不复杂,相反,非功能性需求是开发的重点。本章,按照上篇文章的灰度组件的设计思路,讲解如何进行编码实现。不过,本章对实现的讲解,前前面两个实战项目有所不同。在前两个项目中,我们都是手把手从最基础的 MVP 代码将其。然后讲解如何 review 代码发现问题、重构代码解决问题,最终得到一
dubbo源码学习(三)-Router 在学习router之前先了解下灰色发布的概念 灰度发布概念:灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以
转载 2024-04-05 11:57:48
318阅读
整合nacos(Euraka 类似)实现灰度发布在一般情况下,升级服务器端应用,需要将应用源码或程序包上传到服务器,然后停止掉老版本服务,再启动新版本。但是这种简单的发布方式存在两个问题,一方面,在新版本升级过程中,服务是暂时中断的,另一方面,如果新版本有BUG,升级失败,回滚起来也非常麻烦,容易造成更长时间的服务不可用。什么是灰度发布呢?要想了解这个问题就要先明白什么是灰度灰度从字面意思理解就
Apache Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与通信能力, 利用 Dubbo 提供的丰富服务治理特性,可以实现诸如服务发现、负载均衡、流量调度等服务治理诉求。Dubbo 被设计为高度可扩展,用户可以方便地实现流量拦截、选址的各种
这里是weihubeats,觉得文章不错可以关注公众号小奏技术背景最近在做全链路灰度,服务之间调用有用到dubbo,所以需要做一下dubbo灰度环境dubbo-version:3.3.0-beta.1spring-boot: 2.7.8 源码地址:https://github.com/weihubeats/weihubeats_demos/blob/master/spring-boot-demo
转载 2024-09-23 18:29:29
112阅读
什么是灰度发布灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。灰度期:灰度发布开始到结束期间的这一段时间,称为灰度
转载 2024-08-29 22:50:58
198阅读
在上一篇文章《基于Spring cloud ribbon实现多版本控制》中介绍了如何扩展spring cloud ribbon实现接口多版本控制的项目 – fm-cloud-bambbo, 开发这个项目的过程,给我提供了很多想法和思路,发现只要再做一些扩展,就可以实现灰度管理,于是又有了 fm-cloud-graybunny。灰度发布灰度发布是在多版本控制的基础上进一步扩展实现出来的项目 -&gt
升级项目有了阶段性的进展,目前仍然在进行中。通过本⽂,我们对公司内部的 Dubbo 3 升级过程及收益等做了深⼊总结。 作者:李斌、邱炜背景我们公司从 2015 年开始就使⽤ Dubbo 作为微服务框架,当社区推出 Dubbo 3 时,我们也⽴刻跟进并做了深⼊调研,发现 Dubbo 3 的应⽤/实例级服务注册和发现模式能够在一定程度上解决我们当前注册中⼼
转载 2024-04-26 18:06:37
48阅读
routing-rule通过 Dubbo 中的路由规则做服务治理,路由规则在发起一次RPC调用前起到过滤目标服务器地址的作用,过滤后的地址列表,将作为消费端最终发起RPC调用的备选地址。条件路由。支持以服务或 Consumer 应用为粒度配置路由规则。标签路由。以 Provider 应用为粒度配置路由规则。后续我们计划在 2.6.x 版本的基础上继续增强脚本路由功能。条件路由应用粒度# app1的
转载 2024-03-18 23:31:09
41阅读
在我们项目进行版本升级的时候,肯定要求系统不间断的提供服务,如果直接将某版本上线发布给全部用户,一旦遇到线上事故(或BUG),对用户的影响极大,解决问题周期较长,甚至有时不得不回滚到前一版本,严重影响了用户体验。 基于此,可以采用灰度发布的方式来解决。单体架构下的服务发布⾸先,我们先看⼀下在单体架构中,如何对应⽤中某个服务模块进⾏新版本发布。如下图,应用中的Cart服务模块有新版本迭代: 由于 C
Dubbo是什么?Dubbo是由阿里开发的一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。其核心部分包含:远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。 集群容错: 提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。 自
准备工作:1、ZooKeeper:需要去Apache Zookeeper官网下载Zookeeper.tar.gz包,Dubbo是依赖于Zookeeper的2、Maven:需要去Apache Maven官网下载Maven-xxx.bin.zip包,主要是为了打包war挂在Tomcat下3、Tomcat:当做运行的服务器4、Dubbo:http://dubbo.io/ 需要下载dubbo.zip到本地
简单介绍了使用标签路由实现dubbo灰度发布功能
原创 精选 2023-06-12 16:54:56
2074阅读
2点赞
1评论
我理解的灰度发布,主要是按照一定策略选取部分用户,让他们先行体验新版本的应用,通过收集这部分用户对新版本应用的反馈以及对新版本功能、性能、稳定性等指标进行评论,进而决定继续放大新版本投放范围直至全量升级或回滚至老版本。灰度发布流程图1.1定义目标及早获得用户的意见反馈,完善产品功能,提升产品质量让用户参与产品测试,加强与用户互动降低产品升级所影响的用户范围初次发布给少量用户— 发现问题希望用户及时
转载 2023-11-10 09:47:59
250阅读
1. 什么是灰度发布灰度发布,又被称之为金丝雀发布,是指某次新发布功能特性和旧功能特性之间能够以平滑过渡的方式呈现给用户,就像金丝雀的羽毛一样多种颜色平滑渐变。举个例子,某个已上线处于运行中的系统需要一次新的功能迭代,但是由于功能变动较大,所以发布需要考虑用户的使用反馈以及代码可能存在一些未知的异常,这时候则需要将新的功能逐步地一批一批的推送给用户。在这个逐步放量的过程中,可以根据用户接受度(用
1 蛮力发布顾名思义,这种方式简单而粗暴!直接将新的版本覆盖掉老的版本。其优点就是简单而且成本较低,但缺点同样很明显,就是发布过程中通常会导致服务中断进而导致用户受到影响,这种方式比较适应于开发环境或者测试环境或者是公司内部系统这种对可用性要求不高的场景,有些小的公司资源稀缺(服务器资源,基础设施等)的时候也会采用这种方式。2 金丝雀发布灰度发布)金丝雀发布灰度发布的一种。灰度发布是指在黑与白
首先上几张网上来的图片做下对比,作为开题;2010年的facebook的首页2015年的facebook的首页这么长时间,facebook的首页风格、排版基本没太大变化。其实在2012年,facebook进行首页升级改造,只是在升级版首页灰度期间数据表现始终较老版有明显差距。最终 facebook 忍痛放弃上线众望所归的新版首页。灰度发布指能够达到平滑过渡的一种发布方式。灰度发布的目的主要有:规避
转载 2024-03-28 11:12:22
75阅读
前段时间业务组负责人提出因为合规原因,一个功能模块需要在 App 实现灰度发布,具体来讲就是要在不同的地域和用户等级开展差异化的活动内容展示。利用这个契机恶补了一些“灰度发布”相关的知识,顺势将其中有价值的一些内容梳理与大家进行分享。什么是灰度?要想了解这个问题就要先明白什么是灰度灰度从字面意思理解就是存在于黑与白之间的一个平滑过渡的区域,所以说对于互联网产品来说,上线和未上线就是黑与白之分,而
转载 2024-06-03 19:58:56
136阅读
  • 1
  • 2
  • 3
  • 4
  • 5