用于实现灰度发布的系统和方法技术方案

技术编号:24707261 阅读:18 留言:0更新日期:2020-06-30 23:52
本公开提供了一种用于实现灰度发布的系统,包括第一判断设备、组合服务设备组、第二判断设备和原子服务设备组,第一判断设备用于判断接收到的客户服务请求是否满足灰度判断规则,若是,将客户服务请求发送至第一灰度设备,否则将客户服务请求发送至组合服务设备;组合服务设备组包括组合服务设备和第一灰度设备,用于从客户服务请求中解析获得原子服务请求;第二判断设备用于判断原子服务请求是否满足灰度判断规则,若是,将原子服务请求发送至第二灰度设备,否则将原子服务请求发送至原子服务设备;原子服务设备组包括用于处理原子服务请求的原子服务设备和第二灰度设备。本公开还提供了一种用于实现灰度发布的方法。

【技术实现步骤摘要】
用于实现灰度发布的系统和方法
本公开涉及计算机
,更具体地,涉及一种用于实现灰度发布的系统和方法。
技术介绍
随着计算机技术的快速发展,各种程序产品的版本不断更新迭代,为了提前获得目标用户的使用反馈,完善产品功能,以及降低产品升级所影响的用户范围等目的,通常采用灰度发布的方式对新版本的程序产品进行发布,让一部分用户继续使用旧版本,一部分用户先行体验新版本,通过收集新版本用户对新版本的功能、性能、稳定性等指标的反馈来决定是否逐步扩大发布范围。在实现本公开构思的过程中,专利技术人发现相关技术中至少存在如下问题:对于分布式系统架构,在进行灰度发布的过程中,通常将新旧版本的程序产品部署在同一计算设备中,使程序具有很多分支,造成程序较大且复杂度较高。
技术实现思路
有鉴于此,本公开一方面提供了一种用于实现灰度发布的系统,包括:第一判断设备,用于判断接收到的客户服务请求是否满足灰度判断规则,若是,将所述客户服务请求发送至第一灰度设备;否则,将所述客户服务请求发送至组合服务设备;组合服务设备组,包括所述组合服务设备和所述第一灰度设备,其中,所述组合服务设备和所述第一灰度设备用于从所述客户服务请求中解析获得原子服务请求;第二判断设备,用于判断所述原子服务请求是否满足所述灰度判断规则,若是,将所述原子服务请求发送至第二灰度设备;否则,将所述原子服务请求发送至原子服务设备;以及原子服务设备组,包括所述原子服务设备和所述第二灰度设备,其中,所述原子服务设备和所述第二灰度设备用于处理所述原子服务请求。根据本公开的实施例,所述组合服务设备组包括m个组合服务设备和与所述m个组合服务设备对应的一个第一灰度设备,m为大于0的整数;所述原子服务设备组包括n个原子服务设备和与所述n个原子服务设备一一对应的n个第二灰度设备,n为大于0的整数;所述第一判断设备用于在所述客户服务请求满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述第一灰度设备;以及在所述客户服务请求不满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述m个组合服务设备中的任意一个组合服务设备;所述第二判断设备用于在所述原子服务请求满足所述灰度判断规则的情况下,将所述原子服务请求发送至与所述原子服务请求相对应的第二灰度设备;以及在所述原子服务请求不满足所述灰度判断规则的情况下,将所述原子服务请求发送至与所述原子服务请求相对应的原子服务设备。根据本公开的实施例,所述系统还包括:配置设备,与所述组合服务设备组和所述原子服务设备组连接,所述配置设备用于:接收并存储关于目标服务的待验证版本的配置文件;在所述目标服务与所述组合服务设备组相对应的情况下,将所述待验证版本的配置文件发送至所述第一灰度设备,以使所述第一灰度设备对所述待验证版本的配置文件进行验证;以及在所述目标服务与所述原子服务设备组相对应的情况下,将所述待验证版本的配置文件发送至所述n个第二灰度设备中的每个第二灰度设备,以使所述第二灰度设备对所述待验证版本的配置文件进行验证。根据本公开的实施例,所述配置设备还用于:在所述第一灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件发送至所述m个组合服务设备中的每个组合服务设备,以替换所述m个组合服务设备中的原版本配置文件;在所述第二灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件发送至所述n个原子服务设备中的每个原子服务设备,以替换所述n个原子服务设备中的原版本配置文件;或者在所述第二灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件分批次发送至所述n个原子服务设备,在每次发送过程中,将所述待验证版本的配置文件发送至所述n个原子服务设备中的e个原子服务设备,e为大于0且小于n的整数。根据本公开的实施例,所述第二判断设备还用于:在接收到所述组合服务设备发送的原子服务请求的情况下,判断所述原子服务请求是否满足灰度判断规则,并根据判断结果将所述原子服务请求发送至相应的原子服务设备或者第二灰度设备;在接收到所述第一灰度设备发送的原子服务请求的情况下,直接将所述原子服务请求发送至相应的第二灰度设备。根据本公开的实施例,所述系统还包括判断规则设备,所述判断规则设备用于存储灰度判断规则,并将所述灰度判断规则发送至所述第一判断设备和所述第二判断设备;和/或所述第一判断设备和所述第二判断设备还用于关闭或开启灰度验证服务,在所述第一判断设备的灰度验证服务处于开启状态的情况下,所述第一判断设备用于判断所述客户服务请求是否满足灰度判断规则,并根据判断结果将所述客户服务请求发送至所述组合服务设备或者所述第一灰度设备;在所述第一判断设备的灰度验证服务处于关闭状态的情况下,所述第一判断设备将客户服务请求发送至所述组合服务设备;在所述第二判断设备的灰度验证服务处于开启状态的情况下,所述第二判断设备用于判断所述原子服务请求是否满足灰度判断规则,并根据判断结果将所述原子服务请求发送至所述原子服务设备或者所述第二灰度设备;在所述第二判断设备的灰度验证服务处于关闭状态的情况下,所述第二判断设备将原子服务请求发送至所述原子服务设备。根据本公开的实施例,所述配置设备还用于存储所述原版本配置文件,并在接收到关于目标服务的回退指令的情况下,将所述目标服务对应的原版本配置文件发送至所述组合服务设备或者所述原子服务设备;和/或所述第一判断设备还用于在所述待验证版本的配置文件发送至所述组合服务设备后,删除关于所述目标服务的灰度判断规则;和/或所述第二判断设备还用于在所述待验证版本的配置文件发送至所述原子服务设备后,删除关于所述目标服务的灰度判断规则。本公开的另一方面还提供了一种用于实现灰度发布的方法,包括:响应于接收到客户服务请求,通过第一判断设备判断所述客户服务请求是否满足灰度判断规则,若是,将所述客户服务请求发送至第一灰度设备;否则,将所述客户服务请求发送至组合服务设备;通过所述组合服务设备或者所述第一灰度设备从所述客户服务请求中解析获得原子服务请求;通过第二判断设备判断所述原子服务请求是否满足所述灰度判断规则,若是,将所述原子服务请求发送至第二灰度设备;否则,将所述原子服务请求发送至原子服务设备;以及通过所述原子服务设备或者所述第二灰度设备处理所述原子服务请求。根据本公开的实施例,所述组合服务设备的数量为m个,m个组合服务设备与一个第一灰度设备相对应,m为大于0的整数;所述原子服务设备和所述第二灰度设备的数量为均为n个,且n个原子服务设备与n个第二灰度设备一一对应,n为大于0的整数;所述通过第一判断设备判断所述客户服务请求是否满足灰度判断规则,若是,将所述客户服务请求发送至第一灰度设备;否则,将所述客户服务请求发送至组合服务设备包括:在所述客户服务请求满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述第一灰度设备;以及在所述客户服务请求不满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述m个组合服务设备中的任意一个组合服务设备;所述通过第二判断设备判断所述原子服务请求是否满足所述本文档来自技高网...

【技术保护点】
1.一种用于实现灰度发布的系统,包括:/n第一判断设备,用于判断接收到的客户服务请求是否满足灰度判断规则,若是,将所述客户服务请求发送至第一灰度设备;否则,将所述客户服务请求发送至组合服务设备;/n组合服务设备组,包括所述组合服务设备和所述第一灰度设备,其中,所述组合服务设备和所述第一灰度设备用于从所述客户服务请求中解析获得原子服务请求;/n第二判断设备,用于判断所述原子服务请求是否满足所述灰度判断规则,若是,将所述原子服务请求发送至第二灰度设备;否则,将所述原子服务请求发送至原子服务设备;以及/n原子服务设备组,包括所述原子服务设备和所述第二灰度设备,其中,所述原子服务设备和所述第二灰度设备用于处理所述原子服务请求。/n

【技术特征摘要】
1.一种用于实现灰度发布的系统,包括:
第一判断设备,用于判断接收到的客户服务请求是否满足灰度判断规则,若是,将所述客户服务请求发送至第一灰度设备;否则,将所述客户服务请求发送至组合服务设备;
组合服务设备组,包括所述组合服务设备和所述第一灰度设备,其中,所述组合服务设备和所述第一灰度设备用于从所述客户服务请求中解析获得原子服务请求;
第二判断设备,用于判断所述原子服务请求是否满足所述灰度判断规则,若是,将所述原子服务请求发送至第二灰度设备;否则,将所述原子服务请求发送至原子服务设备;以及
原子服务设备组,包括所述原子服务设备和所述第二灰度设备,其中,所述原子服务设备和所述第二灰度设备用于处理所述原子服务请求。


2.根据权利要求1所述的系统,其中:
所述组合服务设备组包括m个组合服务设备和与所述m个组合服务设备对应的一个第一灰度设备,m为大于0的整数;
所述原子服务设备组包括n个原子服务设备和与所述n个原子服务设备一一对应的n个第二灰度设备,n为大于0的整数;
所述第一判断设备用于在所述客户服务请求满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述第一灰度设备;以及在所述客户服务请求不满足所述灰度判断规则的情况下,将所述客户服务请求发送至所述m个组合服务设备中的任意一个组合服务设备;
所述第二判断设备用于在所述原子服务请求满足所述灰度判断规则的情况下,将所述原子服务请求发送至与所述原子服务请求相对应的第二灰度设备;以及在所述原子服务请求不满足所述灰度判断规则的情况下,将所述原子服务请求发送至与所述原子服务请求相对应的原子服务设备。


3.根据权利要求2所述的系统,还包括:
配置设备,与所述组合服务设备组和所述原子服务设备组连接,
所述配置设备用于:
接收并存储关于目标服务的待验证版本的配置文件;
在所述目标服务与所述组合服务设备组相对应的情况下,将所述待验证版本的配置文件发送至所述第一灰度设备;以及
在所述目标服务与所述原子服务设备组相对应的情况下,将所述待验证版本的配置文件发送至所述n个第二灰度设备中的每个第二灰度设备。


4.根据权利要求3所述的系统,其中,所述配置设备还用于:
在所述第一灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件发送至所述m个组合服务设备中的每个组合服务设备,以替换所述m个组合服务设备中的原版本配置文件;
在所述第二灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件发送至所述n个原子服务设备中的每个原子服务设备,以替换所述n个原子服务设备中的原版本配置文件;或者
在所述第二灰度设备对所述待验证版本的配置文件验证通过后,将所述待验证版本的配置文件分批次发送至所述n个原子服务设备,在每次发送过程中,将所述待验证版本的配置文件发送至所述n个原子服务设备中的e个原子服务设备,e为大于0且小于n的整数。


5.根据权利要求2所述的系统,其中,所述第二判断设备还用于:
在接收到所述组合服务设备发送的原子服务请求的情况下,判断所述原子服务请求是否满足灰度判断规则,并根据判断结果将所述原子服务请求发送至相应的原子服务设备或者第二灰度设备;
在接收到所述第一灰度设备发送的原子服务请求的情况下,直接将所述原子服务请求发送至相应的第二灰度设备。


6.根据权利要求1所述的系统,其中:
所述系统还包括判断规则设备,所述判断规则设备用于存储灰度判断规则,并将所述灰度判断规则发送至所述第一判断设备和所述第二判断设备;和/或
所述第一判断设备和所述第二判断设备还用于关闭或开启灰度验证服务,
在所述第一判断设备的灰度验证服务处于开启状态的情况下,所述第一判断设备用于判断所述客户服务请求是否满足灰度判断规则,并根据判断结果将所述客户服务请求发送至所述组合服务设备或者所述第一灰度设备;在所述第一判断设备的灰度验证服务处于关闭状态的情况下,所述第一判断设备将客户服务请求发送至所述组合服务设备;
在所述第二判断设备的灰度验证服务处于开启状态的情况下,所述第二判断设备用于判断所述原子服务请求是否满足灰度判断规则,并根据判断结果将所述原子服务请求发送至所述原子服务设备或者所述第二灰度设备;在所述第二判断设备的灰度验证服务处于关闭状态的情况下,所述第二判断设备将原子服务请求发送至所述原子服务设备。


7.根据权利要求4所述的系统,其中,
所述配置设备还用于存储所述原版本配置文件,并在接收到关于目标服务的回退指令的情况下,将所述目标服务对应的原版本配置文件发送至所述组合服务设备或者所述原子服务设备;和/或
所述第一判断设备还用于在所述待验证版本的配置文件发送至所述组合服务设备后,删除关于所述目标服务的灰度判断规则;和/或
所述第二判断设备还用于在所述待验证版本的配置文件发送至所述原子服务设备后,删除关于所述目标服务的灰度判断规则。


8.一种用于实现灰度...

【专利技术属性】
技术研发人员:谢伟蔡予萌王凯朱道彬
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1