请求处理方法、系统、计算机设备、存储介质和程序产品技术方案

技术编号:38708102 阅读:11 留言:0更新日期:2023-09-08 14:48
本申请涉及一种请求处理方法、装置、计算机设备、存储介质和程序产品。方法包括:响应于用户请求,从预设灰度策略中筛选与用户请求匹配的目标策略;基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识;目标灰度版本标识对应于目标灰度环境;将目标灰度版本标识与下游应用服务对应的至少一个服务版本标识进行匹配,在匹配成功的情况下得到下游应用服务的目标服务版本标识;目标服务版本标识用于表征在目标灰度环境下下游应用服务的服务版本;调用目标灰度环境下属于服务版本的下游应用服务处理用户请求。采用本方法实现了对灰度发布的用户请求的精准控制,从而可以同时运行多个版本的产品,支持产品快速开发上线。品快速开发上线。品快速开发上线。

【技术实现步骤摘要】
请求处理方法、系统、计算机设备、存储介质和程序产品


[0001]本申请涉及计算机
,特别是涉及一种请求处理方法、系统、计算机设备、存储介质和程序产品。

技术介绍

[0002]一款成熟完善的产品的发布需要经过充分的市场调研和分析、详细产品设计、产品开发这一系列发布过程。很显然,在成熟完善的产品发布方案下,产品的研发周期长,导致产品无法快速开发上线,可能会错过市场时机。
[0003]因此,亟需一种能支持产品快速开发上线的方案。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够解决产品快速开发上线的请求处理方法、系统、计算机设备、计算机可读存储介质和计算机程序产品。
[0005]第一方面,本申请提供了一种请求处理方法,方法包括:
[0006]响应于用户请求,从预设灰度策略中筛选与用户请求匹配的目标策略;
[0007]基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识;目标灰度版本标识对应于目标灰度环境;
[0008]将目标灰度版本标识与下游应用服务对应的至少一个服务版本标识进行匹配,在匹配成功的情况下得到下游应用服务的目标服务版本标识;目标服务版本标识用于表征在目标灰度环境下下游应用服务的服务版本;
[0009]调用目标灰度环境下属于服务版本的下游应用服务处理用户请求。
[0010]在一些实施例中,基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识,包括:
[0011]在目标策略为流量权重策略、且具有多个灰度版本标识的情况下,基于用户请求中携带的请求参数确定各个灰度版本标识对应的权重信息;每个灰度版本标识具有对应的灰度环境;
[0012]根据权重信息,从多个灰度版本标识中确定用户请求对应的目标灰度版本标识。
[0013]在一些实施例中,基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识,包括:
[0014]在目标策略为自定义策略、且具有多个灰度版本标识的情况下,根据用户请求中携带的请求参数,确定目标对象类型;
[0015]基于自定义策略中自定义设置的对象类型与灰度版本标识之间的对应关系,从多个灰度版本标识中确定与目标对象类型对应的目标灰度版本标识。
[0016]在一些实施例中,基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识,包括:
[0017]在目标策略为复合策略的情况下,使用复合策略中的第一子策略根据用户请求中
携带的请求参数,确定用户请求是否为灰度请求;
[0018]在第一子策略确定用户请求为灰度请求、且具有多个灰度版本标识的情况下,使用复合策略中的第二子策略,从多个灰度版本标识中确定用户请求对应的目标灰度版本标识。
[0019]在一些实施例中,第一子策略包括全局开关策略或黑白名单策略中的任意一种;第二子策略包括流量权重策略或自定义策略中的任意一种;
[0020]其中,全局开关策略用于根据用户请求中的开关状态信息判断用户请求是否为灰度请求;黑白名单策略用于根据用户请求中的用户标识所位于的目标名单来判断用户请求是否为灰度请求;目标名单为黑名单或白名单中的任意一种。
[0021]在一些实施例中,目标灰度版本标识是微服务网关计算得到的;方法还包括:
[0022]通过微服务网关将目标灰度版本标识存储于与用户请求对应的共享上下文对象中;下游应用服务是微服务网关的下游的服务链路中首个应用服务;
[0023]在微服务网关调用目标灰度环境下属于服务版本的首个应用服务处理用户请求之后,在服务链路中的每个上游应用服务待调用服务链路中的下游应用服务的情况下,通过上游应用服务从共享上下文对象中读取目标灰度版本标识,基于读取的目标灰度版本标识确定并调用相应目标服务版本的下游应用服务,以处理用户请求。
[0024]在一些实施例中,将目标灰度版本标识与下游应用服务对应的至少一个服务版本标识进行匹配,包括:
[0025]获取下游应用服务的服务元数据;
[0026]将目标灰度版本标识与服务元数据中的至少一个服务版本标识进行匹配。
[0027]在一些实施例中,将目标灰度版本标识与服务元数据中的至少一个服务版本标识进行匹配,包括:将目标灰度版本标识与服务元数据中的至少一个服务版本标识进行正向匹配,若存在与目标灰度版本标识正向匹配的服务版本标识、但目标灰度版本标识中包括特定异常标识符,则判定正向匹配失败;
[0028]方法还包括:
[0029]在正向匹配失败的情况下,调度反向匹配的服务版本标识所对应的部署环境下的下游应用服务处理用户请求;其中,反向匹配的服务版本标识是服务元数据中除正向匹配的服务版本标识之外的服务版本标识。
[0030]第二方面,本申请还提供了一种请求处理系统,系统包括:
[0031]微服务网关,用于响应于用户请求,从预设灰度策略中筛选与用户请求匹配的目标策略;基于目标策略和用户请求中携带的请求参数,计算用户请求对应的目标灰度版本标识;目标灰度版本标识对应于目标灰度环境;将目标灰度版本标识与下游应用服务对应的至少一个服务版本标识进行匹配,在匹配成功的情况下得到下游应用服务的目标服务版本标识;目标服务版本标识用于表征在目标灰度环境下下游应用服务的服务版本。
[0032]微服务网关还用于调用目标灰度环境下属于服务版本的下游应用服务处理用户请求。
[0033]在一些实施例中,目标灰度版本标识是微服务网关计算得到的;微服务网关还用于将目标灰度版本标识存储于与用户请求对应的共享上下文对象中;下游应用服务是微服务网关的下游的服务链路中首个应用服务;
[0034]系统还包括:
[0035]应用服务端,用于在微服务网关调用目标灰度环境下属于服务版本的首个应用服务处理用户请求之后,在应用服务端中的服务链路中的每个上游应用服务待调用服务链路中的下游应用服务的情况下,通过上游应用服务从共享上下文对象中读取目标灰度版本标识,基于读取的目标灰度版本标识确定并调用相应目标服务版本的下游应用服务,以处理用户请求。
[0036]第三方面,本申请还提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述方法的步骤。
[0037]第四方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
[0038]第五方面,本申请还提供了一种计算机程序产品,该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
[0039]上述请求处理方法、系统、计算机设备、存储介质和计算机程序产品,通过从预设灰度策略中筛选与用户请求匹配的目标策略,并根据目标策略和用户请求中携带的请求参数确定目标灰度版本标识,根据目标灰度版本标识从至少一个服务版本标识中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种请求处理方法,其特征在于,所述方法包括:响应于用户请求,从预设灰度策略中筛选与所述用户请求匹配的目标策略;基于所述目标策略和所述用户请求中携带的请求参数,计算所述用户请求对应的目标灰度版本标识;所述目标灰度版本标识对应于目标灰度环境;将所述目标灰度版本标识与下游应用服务对应的至少一个服务版本标识进行匹配,在匹配成功的情况下得到所述下游应用服务的目标服务版本标识;所述目标服务版本标识用于表征在所述目标灰度环境下所述下游应用服务的服务版本;调用所述目标灰度环境下属于所述服务版本的所述下游应用服务处理所述用户请求。2.根据权利要求1所述的方法,其特征在于,所述基于所述目标策略和所述用户请求中携带的请求参数,计算所述用户请求对应的目标灰度版本标识,包括:在所述目标策略为流量权重策略、且具有多个灰度版本标识的情况下,基于所述用户请求中携带的请求参数确定各个所述灰度版本标识对应的权重信息;每个灰度版本标识具有对应的灰度环境;根据所述权重信息,从多个所述灰度版本标识中确定所述用户请求对应的目标灰度版本标识。3.根据权利要求1所述的方法,其特征在于,所述基于所述目标策略和所述用户请求中携带的请求参数,计算所述用户请求对应的目标灰度版本标识,包括:在所述目标策略为自定义策略、且具有多个灰度版本标识的情况下,根据所述用户请求中携带的请求参数,确定目标对象类型;基于所述自定义策略中自定义设置的对象类型与灰度版本标识之间的对应关系,从所述多个灰度版本标识中确定与所述目标对象类型对应的目标灰度版本标识。4.根据权利要求1所述的方法,其特征在于,所述基于所述目标策略和所述用户请求中携带的请求参数,计算所述用户请求对应的目标灰度版本标识,包括:在所述目标策略为复合策略的情况下,使用所述复合策略中的第一子策略根据所述用户请求中携带的请求参数,确定所述用户请求是否为灰度请求;在所述第一子策略确定所述用户请求为灰度请求、且具有多个灰度版本标识的情况下,使用所述复合策略中的第二子策略,从所述多个灰度版本标识中确定所述用户请求对应的目标灰度版本标识。5.根据权利要求4所述的方法,其特征在于,所述第一子策略包括全局开关策略或黑白名单策略中的任意一种;所述第二子策略包括流量权重策略或自定义策略中的任意一种;其中,所述全局开关策略用于根据所述用户请求中的开关状态信息判断所述用户请求是否为灰度请求;所述黑白名单策略用于根据所述用户请求中的用户标识所位于的目标名单来判断所述用户请求是否为灰度请求;所述目标名单为黑名单或白名单中的任意一种。6.根据权利要求1所述的方法,其特征在于,所述目标灰度版本标识是微服务网关计算得到的;所述方法还包括:通过所述微服务网关将所述目标灰度版本标识存储于与所述用户请求对应的共享上下文对象中;所述下游应用服务是所述微服务网关的下游的服务链路中首个应用服务;在所述微服务网关调用所述目标灰度环境下属于所述服务版本的所述首个应用服务处理所述用户请求之后,在所述服务链路中的每个上游应用服务待调用所述服务链路中的
下游应用服...

【专利技术属性】
技术研发人员:刘文华刘国伟李星
申请(专利权)人:金蝶征信有限公司
类型:发明
国别省市:

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

1