一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种任务执行方法、装置及存储介质与流程

2023-02-19 09:34:28 来源:中国专利 TAG:
1.本技术涉及计算机领域,具体涉及一种任务执行方法、装置及存储介质。
背景技术
::2.计算机后台执行任务的过程,可以简单归纳为调用若干个与该任务相关的功能接口,在调用功能接口的过程中可能会出现异常情况导致调用失败,进而导致任务执行失败,若该任务为需要重新执行的任务,现有技术会重新开始调用该任务相关的所有功能接口,若所有任务接口都被成功调用,则确定该任务执行成功。3.在对现有技术的研究和实践过程中,本技术的发明人发现,在重新执行任务的过程中,现有技术需要重新调用该任务相关的所有功能接口,耗时较长且较为繁琐,导致重新执行任务过程的效率不高。技术实现要素:4.本技术实施例提供了一种任务执行方法、装置及存储介质,可以有效提高重新执行任务的效率。5.本技术实施例提供一种任务执行方法,包括:6.接收目标任务的任务重试消息,所述目标任务对应至少两个任务执行接口,所述任务执行接口为执行所述目标任务所需的接口,所述任务重试消息携带所述目标任务的任务数据;7.对每个任务执行接口的特征信息进行哈希处理,得到所述至少两个任务执行接口的至少两个哈希特征值;8.在所述目标任务的哈希特征数据集中查询所述哈希特征值,得到每个哈希特征值的查询结果;9.根据所述查询结果从所述至少两个任务执行接口中,确定所述目标任务的至少一个目标任务执行接口;10.基于所述目标任务的任务数据,调用所述目标任务执行接口,以重新执行所述目标任务。11.具体地,本技术还提供一种任务执行装置,包括:12.消息接收模块,用于接收目标任务的任务重试消息,所述目标任务对应至少两个任务执行接口,所述任务执行接口为执行所述目标任务所需的接口,所述任务重试消息携带所述目标任务的任务数据;13.哈希处理模块,用于对每个任务执行接口的特征信息进行哈希处理,得到所述至少两个任务执行接口的至少两个哈希特征值;14.数据查询模块,用于在所述目标任务的哈希特征数据集中查询所述哈希特征值,得到每个哈希特征值的查询结果;15.接口确定模块,用于根据所述查询结果从所述至少两个任务执行接口中,确定所述目标任务的至少一个目标任务执行接口;16.接口调用模块,用于基于所述目标任务的任务数据,调用所述目标任务执行接口,以重新执行所述目标任务。17.在一些实施例中,所述特征信息包括标识信息和参数类型信息,哈希处理模块包括编码子模块和哈希子模块,其中,18.编码子模块,用于对任务执行接口的参数类型信息进行编码处理,得到所述参数类型信息的类型编码数据;19.哈希子模块,用于对所述任务执行接口的标识信息、和所述类型编码数据进行哈希处理,得到所述任务执行接口的哈希特征值,从而得到所述至少两个任务执行接口的至少两个哈希特征值。20.在一些实施例中,哈希子模块具体用于:21.通过哈希算法对所述任务执行接口的标识信息、和所述类型编码数据进行哈希计算,得到所述任务执行接口的初始哈希特征值;22.当所述初始哈希特征值存在哈希冲突时,对所述初始哈希特征值进行冲突解决处理,得到所述任务执行接口的哈希特征值,从而得到所述至少两个任务执行接口的至少两个哈希特征值。23.在一些实施例中,数据查询模块包括查询子模块、第一结果模块和第二结果模块,其中,24.查询子模块,用于在所述目标任务的哈希特征数据集中查询哈希特征值;25.第一结果模块,用于当所述哈希特征数据集中存在所述哈希特征值,确定所述哈希特征值的查询结果为已存在信息;26.第二结果模块,用于当所述哈希特征数据集中不存在所述哈希特征值,确定所述哈希特征值的查询结果为不存在信息。27.在一些实施例中,接口确定模块具体用于:28.当任务执行接口的哈希特征值的查询结果为不存在信息,确定所述任务执行接口为所述目标任务的目标任务执行接口,以得到所述目标任务的至少一个目标任务执行接口。29.在一些实施例中,任务执行装置还包括:30.历史结果模块,用于当任务执行接口的哈希特征值的查询结果为已存在信息,确定所述任务执行接口的历史调用结果为调用成功信息。31.在一些实施例中,消息接收模块具体用于:32.接收消息队列发送的目标任务的任务重试信息,所述任务重试信息基于所述目标任务的任务失败信息生成,所述任务重试信息携带所述目标任务的任务数据和哈希特征数据集。33.在一些实施例中,任务执行装置还包括:34.获取模块,用于获取所述目标任务执行接口的调用结果;35.数据存储模块,用于当所述调用结果为调用成功信息时,将所述目标任务执行接口的哈希特征值存储到所述哈希特征数据集中,得到更新哈希特征数据集;36.数据集发送模块,用于向所述消息队列发送所述更新哈希特征数据集。37.在一些实施例中,任务执行装置还包括:38.调用控制模块,用于通过调用控制接口接收所述目标任务的任务接口信息,所述任务接口信息包括所述至少两个任务执行接口的特征信息;39.此时哈希处理模块具体用于:40.通过所述调用控制接口对每个任务执行接口的特征信息任务数据进行哈希处理,得到所述至少两个任务执行接口的至少两个哈希特征值;41.此时数据查询模块具体用于:42.通过所述调用控制接口在所述目标任务的哈希特征数据集中查询所述哈希特征值,得到每个哈希特征值的查询结果。43.在一些实施例中,任务执行装置还包括:44.信息输出模块,用于当任务执行接口的历史调用结果为调用成功信息时,通过所述调用控制接口输出所述任务执行接口的历史调用信息。45.在一些实施例中,任务执行装置还包括:46.接口结果模块,用于通过所述调用控制接口,获取所述目标任务执行接口的调用结果;47.接口数据集模块,用于当所述调用结果为调用成功信息时,通过所述调用控制接口将所述目标任务执行接口的哈希特征值存储到所述哈希特征数据集中,得到更新哈希特征数据集;48.接口输出模块,用于通过所述调用控制接口,输出所述目标任务执行接口的调用结果;49.队列发送模块,用于向所述消息队列发送所述更新哈希特征数据集。50.本技术还提供了一种任务执行装置,包括:51.接收模块,用于接收目标任务的任务重试消息,所述目标任务对应第一任务执行接口和第二任务执行接口,所述任务重试消息携带所述目标任务的任务数据;52.第一接口模块,用于对所述第一任务执行接口的进行哈希处理,得到所述第一任务执行接口的第一哈希特征值,以及在所述目标任务的哈希特征数据集中查询所述第一哈希特征值,得到所述第一哈希特征值的第一查询结果;53.第二接口模块,用于当所述第一查询结果为已存在信息时,对所述第二任务执行接口的进行哈希处理,得到所述第二任务执行接口的第二哈希特征值,以及在所述目标任务的哈希特征数据集中查询所述第二哈希特征值,得到所述第二哈希特征值的第二查询结果;54.调用模块,用于当所述第二查询结果为不存在信息时,基于所述目标任务的任务数据,调用所述第二任务执行接口,以重新执行所述目标任务。55.相应的,本技术实施例还提供了一种存储介质,存储介质存储有计算机程序,计算机程序适于处理器进行加载,以执行本技术实施例提供的任一种任务执行方法。56.相应的,本技术实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现本技术实施例提供的任一种任务执行方法。57.本技术可以接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据,然后对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值,再在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果,根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口,最后基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。58.本技术在接收到目标任务的任务重试消息后,可以对该目标任务的每个任务执行接口的特征信息进行哈希处理,并将得到的哈希特征值在该目标任务的哈希特征数据集中查询,根据查询结果确定需要重新调用的目标任务执行接口,本技术引入任务执行接口的哈希特征值,并据此确定目标任务的历史执行过程中未被调用成功的目标任务执行接口,然后仅需调用该目标任务执行接口,即可重新执行目标任务,相比于重新调用目标任务的所有任务执行接口的现有技术,显然本技术更加高效且资源节约。附图说明59.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。60.图1是本技术的任务执行系统的场景示意图;61.图2是本技术的任务执行方法的流程示意图;62.图3是本技术的任务执行方法的另一流程示意图;63.图4是本技术的任务执行方法的另一实施架构示意图;64.图5是本技术的任务执行方法的目标任务执行示意图;65.图6是本技术的任务执行方法的目标任务重新执行示意图;66.图7是本技术的任务执行方法的基于调用控制接口的任务执行示意图;67.图8是本技术的任务执行装置的结构示意图;68.图9是本技术的计算机设备的结构示意图。具体实施方式69.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,本技术所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。70.本技术的任务执行方法可以集成在任务执行装置中,任务执行装置可以集成在任务执行系统中,该任务执行系统可以包括一个或多个计算机设备,该计算机设备可以包括终端或服务器等,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、智能电视、智慧屏幕等等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。71.参见图1,任务执行系统可以包括任务执行装置,任务执行装置可以为终端或服务器,具体地,任务执行装置可以接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据;对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果;根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口;基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。72.需要说明的是,图1所示的任务执行系统的场景示意图仅仅是一个示例,本技术实施例描述的任务执行系统以及场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着任务执行装置的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。73.以下分别进行详细说明。在本实施例中,将对任务执行方法进行详细描述,该任务执行方法可以集成在终端上,如图2所示,图2是本技术实施例提供的任务执行方法的流程示意图。该任务执行方法可以包括:74.101、接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据。75.其中,目标任务可以包括计算机设备通过至少一个接口能够处理的任务,目标任务可以包括能够通过计算机设备实现的多个领域的部分或全体任务,比如,日常生活中的依托计算机设备所实现的电子支付、实时聊天、视频直播、网上购物、信息查询等,具体比如目标任务可以为向用户b发送文本消息“你好吗”,又比如目标任务可以为在线下单商品a,等等。76.其中,任务重试消息可以包括指示重新执行目标任务的信息,目标任务的执行可以归结为调用若干个任务执行接口,在任务执行过程中,由于网络、合规、硬件故障等原因,可能会产生接口调用失败等事件,导致任务执行失败,为了使任务可以顺利执行,可以生成任务重试消息,以重新执行该目标任务。任务重试消息可以由系统在接收到任务执行失败的信息后自动生成,也可以基于用户或测试用例等对象的操作生成,等等。77.其中,任务执行接口可以包括能够实现特定功能的软件相关信息和数据的集合,本技术的任务执行接口为执行目标任务所需,每一个任务执行接口对应目标任务中的一个步骤,比如,若目标任务为扫码支付,任务执行接口可以包括二维码识别接口、扣款接口、扣款通知接口等。任务执行接口所实现的功能为通常为开发人员开发所得,在一些应用场景中,任务执行接口也可以根据实际需求重新确定,比如可以将连续执行且失败率较低的多个接口整合为一个接口,等等。78.其中,任务数据可以包括执行目标任务过程所需的数据,比如,任务数据可以为付款金额和付款对象;可以为消息内容;可以为搜索关键词,等等。79.具体地,接收目标任务的任务重试消息的方式可以包括多种,比如,可以从其他计算机设备(如服务器)接收任务重试消息,可以从集成了本技术的任务执行方法的计算机设备本地的其他模块内获取,等等。80.比如,接收目标任务a的任务重试消息1,目标任务a对应两个任务执行接口,任务重试消息1携带目标任务a的任务数据1。81.102、对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值。82.其中,特征信息可以包括表征任务执行接口的特点的信息,比如,特征信息可以包括任务执行接口的相关参数、标识、类型等信息中的至少一个。83.进行哈希处理可以包括使用哈希算法将特征信息映射为一个哈希特征值,哈希特征值可以为若干个字符所组成的字符串,目标任务中不同任务执行接口的哈希特征值是唯一的。84.本技术可以对每一个任务执行接口的特征信息进行哈希处理,得到每一个任务执行接口对应的哈希特征值,由于每一个任务执行接口的哈希特征值是与该任务执行接口是唯一对应的,则可以基于该哈希特征值,对任务执行接口的调用信息进行标记,比如,若一任务执行接口在先前的目标任务执行过程中已被成功调用,则可以将该任务执行接口的哈希特征值保存到目标任务的哈希特征数据集中。85.比如,目标任务a包括任务执行接口1和任务执行接口2,可以分别对任务执行接口1和任务执行接口2的特征信息进行哈希处理,得到任务执行接口1的哈希特征值1和任务执行接口2的哈希特征值2。86.在一些实施例中,特征信息包括标识信息和参数类型信息,步骤“对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值”可以包括:87.对任务执行接口的参数类型信息进行编码处理,得到参数类型信息的类型编码数据;88.对任务执行接口的标识信息、和类型编码数据进行哈希处理,得到任务执行接口的哈希特征值,从而得到至少两个任务执行接口的至少两个哈希特征值。89.在一些实施例中,特征信息可以包括任务执行接口的标识信息和参数类型信息,标识信息可以包括在计算机设备内部特定范围内对任务执行接口进行唯一标识的信息,标识信息可以为字符、文本等,参数类型信息可以包括任务执行接口在输入或输出数据时所支持的数据类型、或任务执行接口实现特定功能过程中所使用的必要参数以及必要参数的类型,等等。90.具体地,为了便于进行哈希处理以及后续针对哈希特征值的数据存储和数据查询,可以根据哈希处理过程所使用的哈希算法、或参数类型信息的数据形式等信息,对参数类型信息进行编码处理,编码处理可以通过设定的编码方式进行,编码方式比如可打印字符引用编码(quoted-printable)、base64(一种编码方式)、base58(一种编码方式)等等。91.在实际应用过程中,可以对特征信息中的部分或全部进行编码处理,比如对参与类型信息进行编码处理,又比如可以对参数类型信息和标识信息进行编码处理,具体地可以应用场景下根据实际需求灵活确定,在此不做限制。92.然后可以对特征信息(如标识信息、)、编码过的特征信息(如类型编码数据)等中至少一种进行哈希处理,哈希处理可以基于哈希算法进行,常见的哈希算法可以如信息-摘要算法5(md5,message-digestalgorithm5)、安全散列算法1(sha-1、securehashalgorithm1)等等,关于哈希算法的选择在应用场景灵活处理,对此不做限制。93.比如,可以对任务执行接口1的参数类型信息1使用base64进行编码处理,得到参数类型信息1的类型编码数据1,任务执行接口1的标识信息“pp”和类型编码数据1进行哈希处理,得到任务执行接口1的哈希特征值1;对任务执行接口2的参数类型信息2使用base64进行编码处理,得到参数类型信息2的类型编码数据2,任务执行接口1的标识信息“bb”和类型编码数据2进行哈希处理,得到任务执行接口2的哈希特征值2。94.在一些实施例中,步骤“对任务执行接口的标识信息、和类型编码数据进行哈希处理,得到任务执行接口的哈希特征值,从而得到至少两个任务执行接口的至少两个哈希特征值”可以包括:95.通过哈希算法对任务执行接口的标识信息、和类型编码数据进行哈希计算,得到任务执行接口的初始哈希特征值;96.当初始哈希特征值存在哈希冲突时,对初始哈希特征值进行冲突解决处理,得到任务执行接口的哈希特征值,从而得到至少两个任务执行接口的至少两个哈希特征值。97.在进行哈希处理的过程中,可能会出现哈希冲突问题,即对不同的任务执行接口进行哈希处理后相同的哈希特征值,为了保证每个任务执行接口的哈希特征值的唯一性,需要对存在哈希冲突的初始哈希特征值进行冲突解决处理,冲突解决处理的方式多种,如有线性探测方法(linearprobing)、二次探测(quadraticprobing)等方法,比如,当判断一任务执行接口的初始哈希特征值存在冲突时,可以在该初始哈希特征后累加数字,直至得到一个不存在哈希冲突的哈希特征值。98.若使用哈希算法进行哈希计算得到的初试哈希特征值不存在哈希冲突,则该初始哈希特征值即为该任务执行接口的哈希特征值。99.103、在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果。100.其中,哈希特征数据集可以包括存储了若干数据的数据集,比如,哈希特征数据集中可以包括多个任务执行接口的哈希特征值,若目标任务包含的任务执行接口在先前的执行过程中已经成功调用,则将该任务执行接口的哈希特征值存储在哈希特征数据集中。101.又比如,哈希特征数据集中可以包括每个哈希特征值对应任务执行接口的调用信息,如使用不同的数字标识代表不同的调用信息,1代表未被调用、2代表已调用成功、3代表调用失败,此时在哈希特征数据集中查询到的哈希特征值对应的调用信息即为该哈希特征值的查询结果。102.比如,在目标任务a的哈希特征数据集1中分别查询哈希特征值1和哈希特征值2,得到哈希特征值1的查询结果1和哈希特征值2的查询结果2。103.在一些实施例中,步骤“在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果”可以包括:104.在目标任务的哈希特征数据集中查询哈希特征值;当哈希特征数据集中存在哈希特征值,确定哈希特征值的查询结果为已存在信息;当哈希特征数据集中不存在哈希特征值,确定哈希特征值的查询结果为不存在信息。105.具体地,查询的过程可以包括在哈希特征数据集中查询任务执行接口的哈希特征值是否存在,其中,已存在信息可以表明该哈希特征值在哈希特征数据集中存在,不存在信息可以表明该哈希特征值在哈希特征数据集中不存在,已存在信息和不存在信息可以通过多种形式标识,比如字符、文本等,如1代表已存在信息,0代表不存在信息。106.比如,在目标任务a的哈希特征数据集1中分别查询哈希特征值1和哈希特征值2,哈希特征数据集1中存在哈希特征值1,可确定哈希特征值1的查询结果1为已存在信息;哈希特征数据集1中不存在哈希特征值2,可确定哈希特征值2的查询结果2为不存在信息。107.在一些实施例中,任务执行方法还可以包括步骤:108.当任务执行接口的哈希特征值的查询结果为已存在信息,确定任务执行接口的历史调用结果为调用成功信息。109.比如,哈希特征值1的查询结果1为已存在信息,则可确定哈希特征值1所属的任务执行接口1的历史调用结果为调用成功信息。110.104、根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口。111.其中,目标任务执行接口可以包括将要再次调用以重新执行目标任务的接口,在得到每个任务执行接口对应的查询结果后,可以根据该查询结果从多个任务执行接口中,确定需要再次调用的目标任务执行接口。比如,若查询结果为哈希特征值对应任务执行接口的调用信息,则当调用信息为1未被调用或3调用失败时,可以确定该任务执行接口为目标任务执行接口。112.比如,根据任务执行接口1对应的查询结果1、和任务执行接口2对应的查询结果2,从任务执行接口1和任务执行接口2中,确定目标任务执行接口为任务执行接口2。113.在一些实施例中,步骤“根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口”可以包括:114.当任务执行接口的哈希特征值的查询结果为不存在信息,确定任务执行接口为目标任务的目标任务执行接口,以得到目标任务的至少一个目标任务执行接口。115.比如,哈希特征值2的查询结果2为不存在信息,则可以确定哈希特征值2所属的任务执行接口2位目标任务执行接口。116.105、基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。117.在调用目标任务的每个任务执行接口的过程中,部分或全部任务执行接口需要输入目标任务的任务数据、或输入该任务执行接口的前一已成功调用的任务执行接口的输出数据,因此,可以基于目标任务的任务数据调用目标任务执行接口,从而重新执行目标任务。118.本技术在通过查询结果确定未被成功调用的目标任务执行接口后,仅需重新调用目标任务执行接口即可重新执行目标任务,对于已经成功调用的任务执行接口,无需再重复调用,耗费计算机设备的计算资源和存储资源,本技术可以显著提高重新执行目标任务的效率。119.比如,可以基于任务数1重新调用任务执行接口2,从而重新执行目标任务a。120.在一些实施例中,步骤“接收目标任务的任务重试消息”可以包括:121.接收消息队列发送的目标任务的任务重试信息,任务重试信息基于目标任务的任务失败信息生成,任务重试信息携带目标任务的任务数据和哈希特征数据集。122.在一些实施例中,任务执行方法还可以包括步骤:123.获取目标任务执行接口的调用结果;124.当调用结果为调用成功信息时,将目标任务执行接口的哈希特征值存储到哈希特征数据集中,得到更新哈希特征数据集;125.向消息队列发送更新哈希特征数据集。126.为了更加有效地进行数据管理,提升系统的健壮性,可以通过消息队列将不同的操作逻辑解耦,具体地,本技术中可以将目标任务的任务执行消息以及任务重试消息等消息存储在消息队列内,从而有效对此类消息进行管理,同时,消息队列所在计算机设备还保存目标任务的哈希特征数据集,因此,在将要对目标任务进行再次执行时,可以接收消息队列发送的任务重试消息和哈希特征数据集。127.在调用目标任务执行接口后,可以获取目标任务执行接口的调用结果,比如可以接收目标任务执行接口的返回值,从而根据返回值得到目标任务执行接口的调用结果,然后,若目标任务执行接口的调用结果为调用成功,则可以将目标任务执行接口的哈希特征值存储到哈希特征数据集,以对哈希特征数据集进行更新,在得到所有目标任务执行接口的调用结果并对哈希特征数据集更细完成后,将更新哈希特征数据集发送到消息队列,由消息队列进行存储,以便后续相关操作,此外,本技术的哈希特征数据集还可以接收用户或系统想要保存的信息,具体地可以在实际应用过程中灵活掌控,再次不做限制。128.比如,接收消息队列mq发送的目标任务a的任务重试消息1,该任务重试消息1携带任务数据1和哈希特征数据集1。129.又比如,可以获取任务执行接口2的调用结果1,当调用结果1为调用成功信息时,将任务执行接口2的哈希特征值2存储到哈希特征数据集1中,得到更新哈希特征数据集,向消息队列mq发送该更新哈希特征数据集。130.在一些实施例中,任务执行方法还可以包括步骤:131.通过调用控制接口接收目标任务的任务接口信息,任务接口信息包括至少两个任务执行接口的特征信息;132.此时步骤“对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值”可以包括:133.通过调用控制接口对每个任务执行接口的特征信息任务数据进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;134.此时步骤“在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果”可以包括:135.通过调用控制接口在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果。136.在一些实施例中,任务执行方法还可以包括步骤:137.当任务执行接口的历史调用结果为调用成功信息时,通过调用控制接口输出任务执行接口的历史调用信息。138.在一些实施例中,任务执行方法还可以包括步骤:139.通过调用控制接口,获取目标任务执行接口的调用结果;140.当调用结果为调用成功信息时,通过调用控制接口将目标任务执行接口的哈希特征值存储到哈希特征数据集中,得到更新哈希特征数据集;141.通过调用控制接口,输出目标任务执行接口的调用结果;142.向消息队列发送更新哈希特征数据集。143.在一些实施例中,确定目标任务执行接口的过程可以通过调用控制接口实现,具体地,任务执行接口的特征信息可以集成在任务接口信息中,调用控制接口可以接收任务接口信息,并通过调用控制接口对每一个任务执行接口的特征信息进行哈希处理,得到每一个任务执行接口的哈希特征值,以及通过调用控制接口在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果。144.然后,若哈希特征值的查询结果为已存在信息,可确定该任务执行接口的历史调用结果为调用成功信息,当该调用结果为调用成功信息时,可通过调用控制接口输出任务执行接口的历史调用信息。145.若哈希特征值的查询结果为不存在信息,通过调用控制接口确定该哈希特征值所属的任务执行接口为目标任务执行接口,调用该目标任务执行接口后可通过调用控制接口,获取目标任务执行接口的调用结果,当该调用结果为调用成功信息时,可通过调用控制接口将目标任务执行接口的哈希特征值存储到哈希特征数据集中,得到更新哈希特征数据集,向消息队列发送更新哈希特征数据集,以及通过调用控制接口,输出目标任务执行接口的调用结果。146.通过调用控制接口可以将确定需要目标任务执行接口这一过程整合起来,更加易于使用和管理,同时相比于现有技术,使用调用控制接口可以有效提升重新执行任务过程的效率。147.本技术在接收到目标任务的任务重试消息后,可以对该目标任务的每个任务执行接口的特征信息进行哈希处理,并将得到的哈希特征值在该目标任务的哈希特征数据集中查询,根据查询结果确定需要重新调用的目标任务执行接口,本技术引入任务执行接口的哈希特征值,并据此确定目标任务的历史执行过程中未被调用成功的目标任务执行接口,然后仅需调用该目标任务执行接口,即可重新执行目标任务,相比于重新调用目标任务的所有任务执行接口的现有技术,显然本技术更加高效且资源节约。148.根据上述实施例所描述的方法,以下将举例作进一步详细说明。149.本技术将以集成在计算机设备的任务执行系统为例,对任务执行方法进行介绍,其中计算机设备可以为一台服务器,也可以为多台服务器等,本技术对此并不作限制,如图3所示,图3是本技术实施例提供的任务执行方法的流程示意图。该任务执行方法可以包括:150.201、计算机设备接收目标任务的任务重试消息,目标任务对应第一任务执行接口和第二任务执行接口,任务重试消息携带目标任务的任务数据。151.202、计算机设备对第一任务执行接口的进行哈希处理,得到第一任务执行接口的第一哈希特征值。152.203、计算机设备在目标任务的哈希特征数据集中查询第一哈希特征值,得到第一哈希特征值的第一查询结果。153.204、当第一查询结果为已存在信息时,计算机设备确定第一任务执行接口的历史调用结果为第一调用成功信息,并输出该第一调用成功信息。154.205、计算机设备对第二任务执行接口的进行哈希处理,得到第二任务执行接口的第二哈希特征值。155.206、计算机设备在目标任务的哈希特征数据集中查询第二哈希特征值,得到第二哈希特征值的第二查询结果。156.207、当第二查询结果为不存在信息时,计算机设备基于目标任务的任务数据,调用第二任务执行接口,以重新执行目标任务。157.208、计算机设备获取第二任务执行接口的第二调用成功信息,将第二任务执行接口的哈希特征值存储到哈希特征数据集中、以及输出该第二调用成功信息。158.比如参见图4,图4为基于消息队列的任务执行过程架构图,其中,生产者创建消息,并将消息发布到消息队列中,消费者订阅该消息队列,处理该消息队列中的消息,消息队列中可存储大量生产者创建的消息,需要说明的是,此处的消费者、生产者以及消息队列是计算机的常见表述,消费者、生产者以及消息队列可以为同一计算机设备上的不同模块,也可以分别集成在不同计算机设备上。本技术的任务执行方法主要为消费者侧执行,消费者侧可以接收消息队列发送的消息(如任务重试消息)以及消息对应的目标任务的数据集(如哈希数据集),消费者侧对数据集中的数据进行更新后,可以将更新的目标任务的数据集向消息队列发送。159.具体地,比如参加图5,对于一个目标任务“扣款”来说,完成该目标任务需要依次调用接口a、接口b、接口c和接口d,对应的可以参见图6,若任务执行系统(即消费者侧)接收到任务重试消息,则通过生成接口的哈希特征值,并在目标任务的哈希特征数据集中查询该哈希特征值的方式,依次确定四个接口是否在先前的任务执行过程已被调用成功,若已被调用成功,则无需再次调用该接口,跳过即可(即接口a、接口b和接口c),若未被调用成功,则重新调用该接口以重新执行目标任务(即接口d)。160.具体地,参见图7,可以通过任务执行系统(即消费者侧)中的调用控制接口(即图7中的breakpointretrycontroller)展开本技术的任务执行方法,具体地,任务执行系统可以将要调用的函数及参数(即任务执行接口的特征信息)发送输入调用控制接口,调用控制接口可以获取函数名及参数值(即任务执行接口的标识信息和参数类型信息),拼接成字符串,然后调用控制接口可以计算字符串的哈希值,并处理可能的哈希冲突,得到每个函数的哈希值(即任务执行接口的哈希特征值),然后可以在mqattr(即哈希特征数据集)中查询哈希值是否存在,若存在,则返回该函数已调用成功的信息,若不存在则调用该函数,并判断是否调用成功,若该函数调用成功,则将该函数的哈希值存储待哈希特征数据集中,以及返回该函数已调用成功的信息。161.本技术在接收到目标任务的任务重试消息后,可以对该目标任务的每个任务执行接口的特征信息进行哈希处理,并将得到的哈希特征值在该目标任务的哈希特征数据集中查询,根据查询结果确定需要重新调用的目标任务执行接口,本技术引入任务执行接口的哈希特征值,并据此确定目标任务的历史执行过程中未被调用成功的目标任务执行接口,然后仅需调用该目标任务执行接口,即可重新执行目标任务,相比于重新调用目标任务的所有任务执行接口的现有技术,显然本技术更加高效且资源节约。162.为便于更好的实施本技术实施例提供的任务执行方法,本技术实施例还提供一种基于上述任务执行方法的装置。其中名词的含义与上述任务执行方法中相同,具体实现细节可以参考方法实施例中的说明。163.如图8示,图8为本技术一实施例提供的任务执行装置的结构示意图,其中该任务执行装置可以包括消息接收模块301、哈希处理模块302、数据查询模块303、接口确定模块304和接口调用模块305,其中,164.消息接收模块301,用于接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据;165.哈希处理模块302,用于对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;166.数据查询模块303,用于在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果;167.接口确定模块304,用于根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口;168.接口调用模块305,用于基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。169.在一些实施例中,特征信息包括标识信息和参数类型信息,哈希处理模块包括编码子模块和哈希子模块,其中,170.编码子模块,用于对任务执行接口的参数类型信息进行编码处理,得到参数类型信息的类型编码数据;171.哈希子模块,用于对任务执行接口的标识信息、和类型编码数据进行哈希处理,得到任务执行接口的哈希特征值,从而得到至少两个任务执行接口的至少两个哈希特征值。172.在一些实施例中,哈希子模块具体用于:173.通过哈希算法对任务执行接口的标识信息、和类型编码数据进行哈希计算,得到任务执行接口的初始哈希特征值;174.当初始哈希特征值存在哈希冲突时,对初始哈希特征值进行冲突解决处理,得到任务执行接口的哈希特征值,从而得到至少两个任务执行接口的至少两个哈希特征值。175.在一些实施例中,数据查询模块包括查询子模块、第一结果模块和第二结果模块,其中,176.查询子模块,用于在目标任务的哈希特征数据集中查询哈希特征值;177.第一结果模块,用于当哈希特征数据集中存在哈希特征值,确定哈希特征值的查询结果为已存在信息;178.第二结果模块,用于当哈希特征数据集中不存在哈希特征值,确定哈希特征值的查询结果为不存在信息。179.在一些实施例中,接口确定模块具体用于:180.当任务执行接口的哈希特征值的查询结果为不存在信息,确定任务执行接口为目标任务的目标任务执行接口,以得到目标任务的至少一个目标任务执行接口。181.在一些实施例中,任务执行装置还包括:182.历史结果模块,用于当任务执行接口的哈希特征值的查询结果为已存在信息,确定任务执行接口的历史调用结果为调用成功信息。183.在一些实施例中,消息接收模块具体用于:184.接收消息队列发送的目标任务的任务重试信息,任务重试信息基于目标任务的任务失败信息生成,任务重试信息携带目标任务的任务数据和哈希特征数据集。185.在一些实施例中,任务执行装置还包括:186.获取模块,用于获取目标任务执行接口的调用结果;187.数据存储模块,用于当调用结果为调用成功信息时,将目标任务执行接口的哈希特征值存储到哈希特征数据集中,得到更新哈希特征数据集;188.数据集发送模块,用于向消息队列发送更新哈希特征数据集。189.在一些实施例中,任务执行装置还包括:190.调用控制模块,用于通过调用控制接口接收目标任务的任务接口信息,任务接口信息包括至少两个任务执行接口的特征信息;191.此时哈希处理模块具体用于:192.通过调用控制接口对每个任务执行接口的特征信息任务数据进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;193.此时数据查询模块具体用于:194.通过调用控制接口在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果。195.在一些实施例中,任务执行装置还包括:196.信息输出模块,用于当任务执行接口的历史调用结果为调用成功信息时,通过调用控制接口输出任务执行接口的历史调用信息。197.在一些实施例中,任务执行装置还包括:198.接口结果模块,用于通过调用控制接口,获取目标任务执行接口的调用结果;199.接口数据集模块,用于当调用结果为调用成功信息时,通过调用控制接口将目标任务执行接口的哈希特征值存储到哈希特征数据集中,得到更新哈希特征数据集;200.接口输出模块,用于通过调用控制接口,输出目标任务执行接口的调用结果;201.队列发送模块,用于向消息队列发送更新哈希特征数据集。202.本技术中,消息接收模块301可以接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据,哈希处理模块302可以对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值,数据查询模块303可以在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果,接口确定模块304可以根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口,接口调用模块305可以基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。203.此外,本技术实施例还提供一种计算机设备,该计算机设备可以为终端或者服务器,如图9所示,其示出了本技术实施例所涉及的计算机设备的结构示意图,具体来讲:204.该计算机设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图9中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:205.处理器401是该计算机设备的控制中心,利用各种接口和线路连接整个计算机设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行计算机设备的各种功能和处理数据,从而对计算机设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户页面和应用程序等,调制解调处理器主要处理无线通讯。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。206.存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。207.计算机设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。208.该计算机设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。209.尽管未示出,计算机设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,计算机设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:210.接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据;对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果;根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口;基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。211.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中各种可选实现方式中提供的方法。212.为此,本技术实施例还提供一种存储介质,其中存储有计算机程序,该计算机程序能够被处理器进行加载,以执行本技术实施例所提供的任一种任务执行方法中的步骤。例如,该计算机程序可以执行如下步骤:213.接收目标任务的任务重试消息,目标任务对应至少两个任务执行接口,任务执行接口为执行目标任务所需的接口,任务重试消息携带目标任务的任务数据;对每个任务执行接口的特征信息进行哈希处理,得到至少两个任务执行接口的至少两个哈希特征值;在目标任务的哈希特征数据集中查询哈希特征值,得到每个哈希特征值的查询结果;根据查询结果从至少两个任务执行接口中,确定目标任务的至少一个目标任务执行接口;基于目标任务的任务数据,调用目标任务执行接口,以重新执行目标任务。214.其中,该存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。215.由于该存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种任务执行方法中的步骤,因此,可以实现本技术实施例所提供的任一种任务执行方法所能实现的有益效果,详见前面的实施例,在此不再赘述。216.以上对本技术实施例所提供的一种任务执行方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本技术的限制。当前第1页12当前第1页12
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献