一种灰度发布的方法及装置制造方法及图纸

技术编号:26258966 阅读:26 留言:0更新日期:2020-11-06 17:52
本说明书公开了一种灰度发布的方法及装置,业务平台接收用户发送的业务请求后,若确定该业务请求满足灰度条件,获取携带有灰度标识的灰度业务请求。而后,若确定该业务请求对应的业务需要通过第三方平台执行,将灰度标识与灰度业务请求对应的请求标识进行对应保存,并将该灰度业务请求发送给第三方平台。之后,接收第三方平台针对该灰度业务请求返回的业务反馈信息,并通过该业务反馈信息中携带的请求标识,查询出该请求标识对应的灰度标识,将该灰度标识添加在业务反馈信息中,得到灰度反馈信息,并根据灰度反馈信息,执行对该业务请求对应灰度发布的验证,从而有效地验证了灰度发布的完整性和准确性。

【技术实现步骤摘要】
一种灰度发布的方法及装置
本说明书涉及计算机
,尤其涉及一种灰度发布的方法及装置。
技术介绍
当前,为了能够给用户提供更良好的业务体验,开发人员往往需要对业务的版本进行更新,然而,开发人员将线上的业务的版本进行更新或者上线新业务后,用户在执行业务的过程中时可能会出现一些问题。而为了避免这些问题给用户带来的影响,开发人员选择将新版本的业务代码先发布到特定灰度机器,让部分满足灰度条件的用户先体验新业务,试运行一段时间发现新版本的业务代码执行过程中没有出现问题后,再将新版本全面上线。
技术实现思路
本说明书提供一种灰度发布的方法及装置,以用于对版本更新后的业务代码进行灰度发布。本说明书采用下述技术方案:本说明书提供了一种灰度发布的方法,包括:业务平台接收用户发送的业务请求;判断所述业务请求是否满足预设的灰度条件;若确定所述业务请求满足所述灰度条件,获取携带有预设的灰度标识的灰度业务请求;若确定所述业务请求对应的业务需要通过第三方平台执行,将所述灰度标识与所述灰度业务请求对应的请求标识进行对应保存,并将所述灰度业务请求发送给所述第三方平台;接收所述第三方平台针对所述灰度业务请求返回的业务反馈信息;通过所述业务反馈信息中携带的所述请求标识,查询出所述请求标识对应的所述灰度标识;将所述灰度标识添加在所述业务反馈信息中,得到灰度反馈信息,并根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证。可选地,确定所述业务请求满足所述灰度条件,具体包括:确定所述业务平台为所述用户分配的用户ID;以设定数值对将所述用户ID进行取模运算,得到取模结果;若确定所述取模结果位于预设数值范围内,确定所述业务请求满足所述灰度条件。可选地,所述业务平台包含有多个子系统,所述灰度业务请求对应有至少一个子灰度业务请求;将预设的灰度标识添加在所述业务请求中,得到携带有所述灰度标识的灰度业务请求,具体包括:针对每个子系统,按照所述业务请求对应的业务在所述多个子系统中的执行顺序,接收上一子系统发送的携带有所述灰度标识的子灰度业务请求;从所述子灰度业务请求中提取出所述灰度标识,并执行所述子灰度业务请求,得到执行结果;根据所述执行结果,确定向下一子系统发送的携带有所述灰度标识的子灰度业务请求,并发送给所述下一子系统。可选地,从所述子灰度业务请求中提取出所述灰度标识,并执行所述子灰度业务请求,得到执行结果,具体包括:将提取出的所述灰度标识作为线程变量,添加在该子系统用于处理所述业务请求对应业务的线程中,并通过添加所述线程变量的线程执行所述子灰度业务请求,得到执行结果。可选地,根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证,具体包括:若根据所述业务请求对应的业务类型,确定执行所述业务请求对应业务的至少部分子系统需要采用消息队列MQ执行业务,将采用所述MQ执行业务的子系统作为目标子系统;针对每个目标子系统,按照所述业务请求对应的业务在各目标子系统中的执行顺序,从预设的灰度空间中获取下一目标子系统返回的灰度反馈结果,并根据所述灰度反馈结果执行针对所述业务请求对应灰度发布的验证,所述灰度反馈结果是所述下一目标子系统针对该目标子系统发送的子灰度业务请求向所述灰度空间返回的,所述灰度空间用于存储各灰度反馈结果。可选地,若确定所述业务请求满足所述灰度条件,获取携带有预设的灰度标识的灰度业务请求,具体包括:若确定所述业务请求满足所述灰度条件,向所述用户对应的终端返回灰度发布消息,以使所述终端根据所述灰度发布消息,将预设的灰度标识添加在所述业务请求中,得到所述灰度业务请求,并将所述灰度业务请求发送给所述业务平台,所述终端为所述用户发送所述业务请求所基于的终端。可选地,所述方法还包括:若确定所述业务请求不满足所述灰度条件,且所述业务请求中携带有所述灰度标识,向所述用户对应的终端发送标识消除消息,以使所述终端根据所述标识消除消息,去除所述业务请求携带的所述灰度标识,并将去除所述灰度标识后的业务请求发送给所述业务平台,所述终端为所述用户发送所述业务请求所基于的终端。本说明书提供了一种灰度发布的装置,包括:第一接收模块,用于接收用户发送的业务请求;判断模块,用于判断所述业务请求是否满足预设的灰度条件;获取模块,用于若确定所述业务请求满足所述灰度条件,获取携带有预设的灰度标识的灰度业务请求;发送模块,用于若确定所述业务请求对应的业务需要通过第三方平台执行,将所述灰度标识与所述灰度业务请求对应的请求标识进行对应保存,并将所述灰度业务请求发送给所述第三方平台;第二接收模块,用于接收所述第三方平台针对所述灰度业务请求返回的业务反馈信息;查询模块,用于通过所述业务反馈信息中携带的所述请求标识,查询出所述请求标识对应的所述灰度标识;执行模块,用于将所述灰度标识添加在所述业务反馈信息中,得到灰度反馈信息,并根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证。本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述灰度发布的方法。本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述灰度发布的方法。本说明书采用的上述至少一个技术方案能够达到以下有益效果:在本说明书提供的灰度发布的方法中,业务平台接收用户发送的业务请求,并判断该业务请求是否满足预设的灰度条件,若确定该业务请求满足灰度条件,获取携带有预设的灰度标识的灰度业务请求。而后,若确定该业务请求对应的业务需要通过第三方平台执行,将灰度标识与灰度业务请求对应的请求标识进行对应保存,并将该灰度业务请求发送给第三方平台。之后,接收第三方平台针对该灰度业务请求返回的业务反馈信息,并通过该业务反馈信息中携带的请求标识,查询出该请求标识对应的灰度标识,将该灰度标识添加在业务反馈信息中,得到灰度反馈信息,并根据灰度反馈信息,执行针对该业务请求对应灰度发布的验证。从上述方法中可以看出,本方法是通过对需要进行灰度发布的业务对应的业务请求添加灰度标识,进而执行针对该业务请求对应灰度发布的验证。若该业务需要第三方平台的协同执行,业务平台还可以对第三方平台返回的业务反馈信息添加上述灰度标识,由于,灰度标识是一直携带在业务平台用于执行该业务请求对应业务的数据中的,所以,业务平台根据该灰度标识能够将该业务请求对应的业务的全部业务环节进行有效地灰度验证,从而有效地验证了灰度发布的完整性和准确性。附图说明此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:图1为本说明书中一种灰度发布的方法的流程示本文档来自技高网...

【技术保护点】
1.一种灰度发布的方法,其特征在于,包括:/n业务平台接收用户发送的业务请求;/n判断所述业务请求是否满足预设的灰度条件;/n若确定所述业务请求满足所述灰度条件,获取携带有预设的灰度标识的灰度业务请求;/n若确定所述业务请求对应的业务需要通过第三方平台执行,将所述灰度标识与所述灰度业务请求对应的请求标识进行对应保存,并将所述灰度业务请求发送给所述第三方平台;/n接收所述第三方平台针对所述灰度业务请求返回的业务反馈信息;/n通过所述业务反馈信息中携带的所述请求标识,查询出所述请求标识对应的所述灰度标识;/n将所述灰度标识添加在所述业务反馈信息中,得到灰度反馈信息,并根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证。/n

【技术特征摘要】
1.一种灰度发布的方法,其特征在于,包括:
业务平台接收用户发送的业务请求;
判断所述业务请求是否满足预设的灰度条件;
若确定所述业务请求满足所述灰度条件,获取携带有预设的灰度标识的灰度业务请求;
若确定所述业务请求对应的业务需要通过第三方平台执行,将所述灰度标识与所述灰度业务请求对应的请求标识进行对应保存,并将所述灰度业务请求发送给所述第三方平台;
接收所述第三方平台针对所述灰度业务请求返回的业务反馈信息;
通过所述业务反馈信息中携带的所述请求标识,查询出所述请求标识对应的所述灰度标识;
将所述灰度标识添加在所述业务反馈信息中,得到灰度反馈信息,并根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证。


2.如权利要求1所述的方法,其特征在于,确定所述业务请求满足所述灰度条件,具体包括:
确定所述业务平台为所述用户分配的用户ID;
以设定数值对将所述用户ID进行取模运算,得到取模结果;
若确定所述取模结果位于预设数值范围内,确定所述业务请求满足所述灰度条件。


3.如权利要求1所述的方法,其特征在于,所述业务平台包含有多个子系统,所述灰度业务请求对应有至少一个子灰度业务请求;
将预设的灰度标识添加在所述业务请求中,得到携带有所述灰度标识的灰度业务请求,具体包括:
针对每个子系统,按照所述业务请求对应的业务在所述多个子系统中的执行顺序,接收上一子系统发送的携带有所述灰度标识的子灰度业务请求;
从所述子灰度业务请求中提取出所述灰度标识,并执行所述子灰度业务请求,得到执行结果;
根据所述执行结果,确定向下一子系统发送的携带有所述灰度标识的子灰度业务请求,并发送给所述下一子系统。


4.如权利要求3所述的方法,其特征在于,从所述子灰度业务请求中提取出所述灰度标识,并执行所述子灰度业务请求,得到执行结果,具体包括:
将提取出的所述灰度标识作为线程变量,添加在该子系统用于处理所述业务请求对应业务的线程中,并通过添加所述线程变量的线程执行所述子灰度业务请求,得到执行结果。


5.如权利要求3所述的方法,其特征在于,根据所述灰度反馈信息,执行针对所述业务请求对应灰度发布的验证,具体包括:
若根据所述业务请求对应的业务类型,确定执行所述业务请求对应业务的至少部分子系统需要采用消息队列MQ执行业务,将采用所述MQ执行业务的子系统作为目标子系统;
针对每个目标子系统,按照所述业务请求对应的...

【专利技术属性】
技术研发人员:王志文余智铭王琦森许谦
申请(专利权)人:北京三快在线科技有限公司
类型:发明
国别省市:北京;11

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

1