本技术涉及互联网,尤其涉及一种任务处理方法、装置、设备以及存储介质。
背景技术:
1、随着互联网技术的发展,发展出来各种各样的系统诮,系统之间有着各种数据交互。数据交互的方式多种多样,有通过接口进行数据访问、直接通过数据库进行交互访问或者直接通过各种请求消息进行通信或者其他方式。现在经常使用通信协议等方式调用接口进行数据交互,这是现在互联网场景中最常见的方式。使用这种方式能够快速进行多系统的数据交互,提高效率。但是,由于现在网络条件复杂或者服务节点系统不稳定等各种因素影响,使得这种接口调用方式存在任务请求响应不及时的问题。
2、为了解决这一问题,通常会给任务请求设定合理超时阈值,使得任务请求在超时之后可以尽快结束任务请求,而不是一直占用网络资源等待服务节点响应该任务请求,从而使得任务请求具有较低延迟。
3、而不同的应用场景,其任务请求的流量具有不同的特征,即通常存在流量高峰期和流量低峰值,此时静态的超时阈值将出现问题。因此为了更有效的适应当前的网络环境,需要提供一种很有效的任务处理方法。
技术实现思路
1、本技术实施例提供了一种任务处理方法、装置、设备以及存储介质,用于动态调整超时阈值,从而更有效的适应多种网络环境,进行保证任务的有效性和低延迟。
2、有鉴于此,本技术一方面提供一种任务处理方法,包括:向n个下游服务节点发送任务请求,并记录该n个下游服务节点中每个下游服务节点对该任务请求的等待时长,该n为正整数;在该n大于等于2时,获取至少一个第一下游服务节点反馈的响应时长,该至少一个第一下游服务节点包含于该n个下游服务节点,其中,该第一下游服务节点为在第一网络超时时长之内响应该任务请求的节点,该第一网络超时时长是根据该第一下游服务节点的历史响应数据确定;根据该响应时长确定至少一个第二下游服务节点的动态超时时长,该至少一个第二下游服务节点包含于该n个下游服务节点,其中,该第二下游服务节点为在第二网络超时时长之内未响应该任务请求的节点,该第二网络超时时长是根据该第二下游服务节点的历史响应数据确定;在该第二下游服务节点的等待时长大于该动态超时时长时,结束该任务请求。
3、本技术另一方面提供一种任务处理装置,包括:
4、发送模块,用于向n个下游服务节点发送任务请求,并记录该n个下游服务节点中每个下游服务节点对该任务请求的等待时长,该n为正整数;
5、获取模块,用于在该n大于等于2时,获取至少一个第一下游服务节点反馈的响应时长,该至少一个第一下游服务节点包含于该n个下游服务节点,其中,该第一下游服务节点为在第一网络超时时长之内响应该任务请求的节点,该第一网络超时时长是根据该第一下游服务节点的历史响应数据确定;
6、处理模块,用于根据该响应时长确定至少一个第二下游服务节点的动态超时时长,该至少一个第二下游服务节点包含于该n个下游服务节点,其中,该第二下游服务节点为在第二网络超时时长之内未响应该任务请求的节点,该第二网络超时时长是根据该第二下游服务节点的历史响应数据确定;在该第二下游服务节点的等待时长大于该动态超时时长时,结束该任务请求。
7、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,具体用于对该响应时长取均值得到第一平均响应时长;
8、对该第一平均响应时长与第一等待因子求乘积得到第一乘积值,该第一等待因子为设定的权重值;
9、对该第一乘积值和最小等待时长取大值得到该动态超时时长,该最小等待时长为设定的静态阈值。
10、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,还用于根据该响应时长确定该第二下游服务节点的动态重查时长;
11、该发送模块,还用于在该第二下游服务节点的等待时长小于该动态超时时长且大于该动态重查时长时,向该第二下游服务点发送重查请求。
12、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,用于对该响应时长取均值得到该第一平均响应时长;
13、获取该第一平均响应时长与第二等待因子的第二乘积值,该第二等待因子为设定的权重值,该第二等待因子小于该第一等待因子;
14、对该第二乘积值和最小重查等待时长取大值得到该动态超时时长,该最小重查等待时长为设定的静态阈值。
15、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,用于更新该第二下游服务节点的重查统计次数。
16、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,还用于根据该响应时长确定该第二下游服务节点的动态重查时长;
17、获取该第二下游服务节点的重查统计次数;
18、该发送模块,还用于在该第二下游服务节点的等待时长小于该动态超时时长且大于该动态重查时长,且该重查统计次数小于第一阈值时,向该第二下游服务点发送重查请求。
19、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,还用于根据该响应时长更新该第一下游服务节点的历史响应数据。
20、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,获取模块,还用于获取该第一下游服务节点的响应状态,该响应状态用于指示该第一下游服务节点反馈数据成功或者失败;
21、该处理模块,还用于根据该响应状态确定该任务请求当前接收到的数据量;
22、在该第二下游服务节点的等待时长大于最小等待时长且该数据量满足丢层比例时,结束该任务请求,该丢层比例用于指示当前接收到的数据量与该任务请求对应的完整数据量的比例值。
23、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,处理模块,还用于在当前交互过程中,为该任务请求设定整体等待时长。
24、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该处理模块,用于在该第二下游服务节点的等待时长大于该动态超时时长或者大于该整体等待时长时,结束该任务请求。
25、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该获取模块,用于获取该第一下游服务节点的历史响应数据和该第二下游服务节点的历史响应数据,该第一下游服务节点的历史响应数据包括该第一下游服务节点的历史响应时长,该第二下游服务节点的历史响应数据包括该第二下游服务节点的历史响应时长;
26、处理模块,用于对该第一下游服务节点的历史响应时长求均值得到第二平均响应时长,并对该第二下游服务节点的历史响应时长求均值得到第三平均响应时长;
27、设定该第二平均响应时长作为该第一下游服务节点在当前交互过程中的第一网络超时时长;
28、设定该第三平均响应时长作为该第二下游服务节点在当前交互过程中的第二网络超时时长。
29、在一种可能的设计中,在本技术实施例的另一方面的另一种实现方式中,该获取模块,用于在该n等于1时,获取该下游服务节点的历史响应数据,该历史响应数据包括该下游服务节点的历史响应时长;
30、处理模块,用于对该历史响应时长求均值得到第三平均响应时长;
31、设定该第三平均响应时长作为该下游服务节点在当前交互过程中的第三网络超时时长;
32、在该下游服务节点的等待时长超过该第三网络超时时长时,结束该任务请求。
33、本技术另一方面提供一种计算机设备,包括:存储器、处理器以及总线系统;
34、其中,存储器用于存储程序;
35、处理器用于执行存储器中的程序,处理器用于根据程序代码中的指令执行上述各方面的方法;
36、总线系统用于连接存储器以及处理器,以使存储器以及处理器进行通信。
37、本技术的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
38、本技术的另一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方面所提供的方法。
39、从以上技术方案可以看出,本技术实施例具有以下优点:利用服务节点的历史响应数据来动态的设置网络超时时长,同时在具有多种服务节点时,利用当前交互过程中其他服务节点的实时响应时长确定动态超时时长,使得任务请求的超时阈值更符合实际网络环境,从而保证任务的有效性和低延迟。
1.一种任务处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述响应时长确定至少一个第二下游服务节点的动态超时时长包括:
3.根据权利要求2所述的方法,其特征在于,在获取至少一个第一下游服务节点反馈的响应时长之后,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述根据所述响应时长确定所述至少一个第二下游服务节点的动态重查时长包括:
5.根据权利要求3所述的方法,其特征在于,在向所述至少一个第二下游服务点发送重查请求之后,所述方法还包括:
6.根据权利要求2所述的方法,其特征在于,在获取至少一个第一下游服务节点反馈的响应时长之后,所述方法还包括:
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
8.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
9.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
10.根据权利要求9所述的方法,其特征在于,在根据所述响应时长确定至少一个第二下游服务节点的动态超时时长之后,所述方法还包括:
11.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
12.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:
13.一种任务处理装置,其特征在于,包括:
14.一种计算机设备,其特征在于,包括:存储器、处理器以及总线系统;
15.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至12中任一项所述的方法。