业务请求处理方法、装置、电子设备及存储介质与流程

文档序号:36009604发布日期:2023-11-17 02:38阅读:49来源:国知局
业务请求处理方法与流程

本技术涉及计算机,尤其涉及一种业务请求处理方法、装置、电子设备及存储介质。


背景技术:

1、目前,互联网服务项目多种多样,为了保证服务质量,一般将业务系统的处理逻辑分解为多个功能模块,每个功能模块与至少一个下游系统通信来获取数据。

2、实际应用中,不同下游系统的响应时间可能因为网络状况、系统负载、数据量等因素而有所差异,且同一下游系统在不同时段的响应时间也存在波动,这就导致在按照固定顺序执行业务逻辑时,当某个下游系统响应较慢时,会阻塞后续的功能模块处理过程,出现“空闲等待”状态,从而造成了业务系统的整体响应时间延长,降低业务系统的性能,影响用户体验。


技术实现思路

1、本技术提供了一种业务请求处理方法、装置、电子设备及存储介质,以解决现有技术中的不同下游系统的响应时间可能因为网络状况、系统负载、数据量等因素而有所差异,且同一下游系统在不同时段的响应时间也存在波动,这就导致在按照固定顺序执行业务逻辑时,当某个下游系统响应较慢时,会阻塞后续的功能模块处理过程,出现“空闲等待”状态,从而造成了业务系统的整体响应时间延长,降低业务系统的性能,影响用户体验的技术问题。

2、第一方面,本技术提供了一种业务请求处理方法,应用于业务系统,所述业务系统包括多个业务节点,每个所述业务节点对应至少一个服务,所述业务节点在被执行时与对应的所述服务交互,所述方法包括:

3、接收业务请求,并确定所述业务请求对应的多个目标业务节点,以及每个所述目标业务节点对应的目标服务,得到目标服务列表;

4、获取所述目标服务列表对应的排序目标服务列表,所述排序目标服务列表基于所述目标服务列表中每个目标服务的历史响应时间进行排序得到;

5、遍历所述排序目标服务列表,并执行遍历到的所述目标服务对应的所述目标业务节点。

6、作为一个可能的实现方式,所述确定所述业务请求对应的多个目标业务节点,以及每个所述目标业务节点对应的目标服务,得到目标服务列表,包括:

7、将所述业务请求与预设的业务请求规则进行匹配,得到所述业务请求对应的多个所述目标业务节点;

8、从预设的所述业务节点与所述服务的对应关系中,确定每个所述目标业务节点对应的目标服务,由每个所述目标业务节点对应的所述目标服务组成目标服务列表。

9、作为一个可能的实现方式,所述业务系统还包括调度组件,所述获取所述目标服务列表对应的排序目标服务列表,包括:

10、从所述调度组件中获取所述目标服务列表对应的所述排序目标服务列表,其中,当所述目标服务列表中的所述目标服务在历史时间段被调用时,所述调度组件采集所述目标服务被调用的历史响应时间,并根据每个所述目标服务的所述历史响应时间,对所述目标服务列表中的所述目标服务进行排序,得到所述排序目标服务列表。

11、作为一个可能的实现方式,在所述得到所述目标服务列表之后,所述方法还包括:

12、并行调用所述目标服务列表中的所述目标服务;

13、确定每个所述目标服务在被调用之后的第一响应时间;

14、将所述第一响应时间发送至所述调度组件,以使所述调度组件采集所述第一响应时间,并基于所述第一响应时间更新所述排序目标服务列表中所述目标服务的先后顺序,并将更新后的排序目标服务列表替换当前的所述排序目标服务列表。

15、作为一个可能的实现方式,所述调度组件基于所述第一响应时间更新所述排序目标服务列表中所述目标服务的先后顺序,包括:

16、采集每个所述目标服务在被调用之后的所述第一响应时间;

17、针对每个所述目标服务,确定所述目标服务在预设时间段内对应的多个历史响应时间,其中,所述目标服务在所述预设时间段内,每被调用一次则对应一个历史响应时间;确定所述第一响应时间与多个所述历史响应时间的平均值,得到平均响应时间;

18、按照每个所述目标服务对应的所述平均响应时间,对所述排序目标服务列表中所述目标服务的先后顺序进行更新。

19、作为一个可能的实现方式,在存在所述平均响应时间相同的至少两个所述目标服务的情况下,在所述按照每个所述目标服务对应的所述平均响应时间,对所述排序目标服务列表中所述目标服务的先后顺序进行更新之后,在所述将更新后的排序目标服务列表替换当前的所述排序目标服务列表之前,还包括:

20、针对所述平均响应时间相同的至少两个所述目标服务,获取每个所述目标服务在当前所述预设时间段之前的n个历史预设时间段中,每个所述历史预设时间段对应的历史平均响应时间,得到n个所述历史平均响应时间,所述n为正整数;确定每个所述目标服务对应的n个所述历史平均响应时间的历史平均值;

21、根据每个所述目标服务对应的所述历史平均值,对所述平均响应时间相同的至少两个所述目标服务在更新后的所述排序目标服务列表中的先后顺序进行调整。

22、作为一个可能的实现方式,在存在对应至少两个所述目标服务的所述目标业务节点的情况下,所述对所述排序目标服务列表中所述目标服务的先后顺序进行更新,包括:

23、从所述目标服务列表中确定多个目标服务集合,其中,每个所述目标服务集合对应一个目标业务节点;

24、确定每个所述目标服务集合对应的目标平均响应时间;

25、按照每个所述目标服务集合对应的所述目标平均响应时间,对多个所述目标服务集合进行排序,得到所述排序目标服务列表。

26、作为一个可能的实现方式,所述确定每个所述目标服务集合对应的目标平均响应时间,包括:

27、针对每个所述目标服务集合,在所述目标服务集合包括一个目标服务的情况下,将所述目标服务对应的所述平均响应时间,确定为所述目标服务集合对应的所述目标平均响应时间;

28、在所述目标服务集合包括多个所述目标服务的情况下,将多个所述目标服务对应的所述平均响应时间的平均值,确定为所述目标服务集合对应的所述目标平均响应时间。

29、第二方面,本技术提供了一种业务请求处理装置,应用于业务系统,所述业务系统包括多个业务节点,每个所述业务节点对应至少一个服务,所述业务节点在被执行时与对应的所述服务交互,所述装置包括:

30、接收模块,用于接收业务请求,并确定所述业务请求对应的多个目标业务节点,以及每个所述目标业务节点对应的目标服务,得到目标服务列表;

31、获取模块,用于获取所述目标服务列表对应的排序目标服务列表,所述排序目标服务列表基于所述目标服务列表中每个目标服务的历史响应时间进行排序得到;

32、遍历模块,用于遍历所述排序目标服务列表,并执行遍历到的所述目标服务对应的所述目标业务节点。

33、第三方面,本技术提供一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的业务请求处理程序,以实现第一方面中任一项所述的业务请求处理方法。

34、第四方面,本技术提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任一项所述的业务请求处理方法。

35、本技术实施例提供的上述技术方案与现有技术相比具有如下优点:本技术实施例提供的技术方案,通过接收业务请求,并确定业务请求对应的多个目标业务节点,以及每个目标业务节点对应的目标服务,得到目标服务列表,之后,可获取目标服务列表对应的排序目标服务列表,上述排序目标服务列表基于目标服务列表中每个目标服务的历史响应时间进行排序得到,遍历排序目标服务列表,并执行遍历到的目标服务对应的目标业务节点。这一技术方案,通过在执行业务请求相关的目标业务节点时,按照每个目标业务节点对应的目标服务的历史响应时间的先后顺序执行目标业务节点,这相较于按照固定顺序执行业务请求对应的目标业务节点,可避免业务系统长时间处于“空闲等待”的状态,提升业务系统性能和稳定性,提升用户体验。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1