CN114185625A - 接口自动化延迟执行结果的确认方法、装置、设备及介质 - Google Patents

接口自动化延迟执行结果的确认方法、装置、设备及介质 Download PDF

Info

Publication number
CN114185625A
CN114185625A CN202111519226.9A CN202111519226A CN114185625A CN 114185625 A CN114185625 A CN 114185625A CN 202111519226 A CN202111519226 A CN 202111519226A CN 114185625 A CN114185625 A CN 114185625A
Authority
CN
China
Prior art keywords
delay
task
delayed
updated
executed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111519226.9A
Other languages
English (en)
Inventor
肖燕燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An E Wallet Electronic Commerce Co Ltd
Original Assignee
Ping An E Wallet Electronic Commerce Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An E Wallet Electronic Commerce Co Ltd filed Critical Ping An E Wallet Electronic Commerce Co Ltd
Priority to CN202111519226.9A priority Critical patent/CN114185625A/zh
Publication of CN114185625A publication Critical patent/CN114185625A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及过程优化的技术领域,公开了一种接口自动化延迟执行结果的确认方法、装置、设备及介质。所述方法包括:将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;在确认延迟表中的第一延迟任务发生更新且更新的第一延迟任务关联的延迟状态为成功状态时,将更新的第一延迟任务的第一标识和延迟任务池中的第二标识进行匹配;在更新的第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认接口自动化案例中的待执行延迟任务延迟执行成功。本发明能够提高接口自动化案例执行的准确性。

Description

接口自动化延迟执行结果的确认方法、装置、设备及介质
技术领域
本发明涉及过程优化的技术领域,尤其揭露了一种接口自动化延迟执行结果的确认方法、装置、设备及介质。
背景技术
目前,在执行接口自动化案例时,经常会遇到自动化案例的某一个步骤需要延迟执行,并且需要等到延迟执行结果出来后,才能接着执行下一步的步骤,如调系统退款接口,系统向下游系统发起的退款请求需要延迟执行,等到延迟执行成功后,系统得到下游系统返回的退款流水的结果时,才能接着执行下一个自动化步骤。
现有技术中,通常通过以下方案处理上述问题:在下一步自动化案例执行前,通过脚本使用delay方法来延迟特定的时间(估算时间,如每个自动化案例一个等待时钟),从而达到等待延迟执行的效果;但现有技术中的该方案由于精确性和及时性不足,可能会出现delay的时间已结束,上一步延迟执行的过程却还没有结果的问题,也可能出现上一步延迟执行过程已出结果,delay时间却还未结束的问题,进而造成不能及时释放系统内存的问题。
因此本领域技术人员亟需寻找一种新的技术方案来解决上述的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种接口自动化延迟执行结果的确认方法、装置、设备及介质,能够避免出现由于等待时间过长而消耗过多系统内存的情况,或避免出现等待时间结束后还未获取延迟执行结果而导致与接口自动化案例关联的下一步自动化步骤执行失败的情况,进而可提高接口自动化案例执行的准确性。
一种接口自动化延迟执行结果的确认方法,包括:
将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
一种接口自动化延迟执行结果的确认装置,包括:
落库模块,用于将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
匹配模块,用于在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
第一确认模块,用于在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述接口自动化延迟执行结果的确认方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述接口自动化延迟执行结果的确认方法。
上述接口自动化延迟执行结果的确认方法、装置、设备及介质,在延迟执行成功时,确认延迟表中的第一延迟任务发生更新且更新的第一延迟任务关联的延迟状态为成功状态,此时可用更新后的第一延迟任务的第一标识和延迟任务池中的第二标识进行匹配,以确定是否延迟执行成功,可见,本发明能提高延迟执行过程获取延迟执行结果的及时性,避免出现由于等待时间过长而消耗过多系统内存的情况(等待时间段,能及时释放系统内存),或避免出现等待时间结束后还未获取延迟执行结果而导致与接口自动化案例关联的下一步自动化步骤执行失败的情况,进而可提高接口自动化案例执行的准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中接口自动化延迟执行结果的确认方法的一应用环境示意图;
图2是本发明一实施例中接口自动化延迟执行结果的确认方法的一流程图;
图3是本发明一实施例中接口自动化延迟执行结果的确认装置的结构示意图;
图4是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都为本发明保护的范围。
本发明提供的接口自动化延迟执行结果的确认方法,可应用在如图1的应用环境中,其中,客户端通过网络与服务器进行通信。其中,客户端可以包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以是多个服务器组成的服务器集群来实现,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
在一实施例中,如图2所示,提供一种接口自动化延迟执行结果的确认方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S10,将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
可理解地,接口自动化案例是指预先编制成功的接的自动化操作流程,根据该接口自动化案例可发起多种业务操作,如在订单支付系统中的发起退款操作或发起分账操作等,且每一个接口自动化案例都包含一个待执行延迟任务,待执行延迟任务与业务操作存在关系,如待延迟任务可表示为发起退款或发起分账;延迟表为delayMessage,该表包含多个与第一延迟任务关联的字段,所述字段包括但不限于delaytype(延迟类型)、第一标识(delay唯一标识key)、延迟下次执行时间(next_exec_time)和延迟状态(delayState);延迟任务池(delayTask池)相当于一个记载多少个第二延迟任务在等待的记录列表,且写入与自动化案例关联的第二延迟任务的字段,该字段包括但不限于第二标识(delay唯一标识key)和接口自动化案例编号,在延迟任务池中,自动化案例被挂起且等待延迟任务池通知是否匹配成功,也即自动化案例中的第二延迟任务是以等待的状态存在于延迟池中;
本实施例中的接口自动化案例可以为一个,也可以为多个,在接口自动化案例为一个时,待执行延迟任务为一个,相对地,在接口自动化案例为多个时,待执行延迟任务也为多个,如接口自动化案例为4个时,待执行延迟任务即为4个;本实施例的延迟任务池使得接口自动化案例的延迟执行步骤更易于管理和维护(将接口自动化案例中的待执行延迟任务以记录列表的形式进行体现,进而通过延迟任务池清晰地查看到已匹配成功的待执行延迟任务、还在继续等待的待执行延迟任务、需要被丢弃的超过预设等待时长的待执行延迟任务,不需要一个个查看接口自动化案例的待执行延迟任务的执行情况,进而更易于接口自动化案例的管理和维护),同时有利于在排查问题时会更高效。
S20,在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
可理解地,本实施例可通过预设第一时间阈值轮询检测延迟表中的数据量是否发生更新,其中,发生更新意味着原先写入延迟表中的第一延迟任务对应的数据发生数据更新;本实施例在确认发生数据更新后,则将与延迟状态为成功状态(delayState=S,S为Succes)关联的第一延迟任务的数据推送至延迟任务池中,在延迟任务池中,将更新过第一延迟任务的第一标识与延迟任务中与第二延迟任务的第二标识进行匹配;本实施例通过具有唯一标识特性的第一标识和第二标识机进行匹配,以确定在数据更新后,延迟表中的第一延迟任务是否已被执行成功。
S30,在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
在另一实施例中,所述确认所述接口自动化案例中的待执行延迟任务延迟执行成功之后,根据延迟任务池中与接口自动化案例对应的接口自动化案例编号,通知接口自动化案例中的第一延迟任务延迟执行成功。
在步骤S10至步骤S30所在的实施例中,在延迟执行成功时,确认延迟表中的第一延迟任务发生更新且更新的第一延迟任务关联的延迟状态为成功状态,此时可用更新后的第一延迟任务的第一标识和延迟任务池中的第二标识进行匹配,以确定是否延迟执行成功,可见,本发明能提高延迟执行过程获取延迟执行结果的及时性,避免出现由于等待时间过长而消耗过多内存的情况,或避免出现等待时间结束后还未获取延迟执行结果而导致与接口自动化案例关联的下一步自动化步骤执行失败的情况,进而可提高接口自动化案例执行的准确性。
进一步地,所述将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中之后,还包括:
每隔预设的第一时间阈值轮询检测所述延迟表中的各个第一延迟任务是否发生更新;
在所述第一时间阈值查询到所述第一延迟任务的更新信息为预设更新数值,确认所述延迟表中的第一延迟任务当前未发生更新;
在所述第一时间阈值查询到所述第一延迟任务的更新信息大于预设更新数值,确认所述延迟表中的第一延迟任务当前发生更新,将所述延迟表中与更新的第一延迟任务关联的延迟状态定义为成功状态,并将与更新的第一延迟任务关联的延迟状态发送至所述延迟任务池中。
可理解地,第一时间阈值范围可为一分钟;更新信息是通过update进行表示,预设更新数值设置为0,在update=0,说明延迟表中的第一延迟任务对应的数据未发生更新,在update>0时,说明延迟表中的第一延迟任务对应的数据未发生更新;本实施例通过第一延迟任务的更新信息,将发生更新的第一延迟任务关联的延迟状态发送至延迟任务池中,以后续在延迟任务池中,通过对延迟状态为成功状态的第一延迟任务与第二延迟任务进行唯一标识的匹配。
进一步地,所述延迟表中的各个第一延迟任务均关联一个延迟下次执行时间;所述确认所述延迟表中的第一延迟任务发生更新,包括:
在包含待执行延迟任务的所述接口自动化案例为一个时,获取调度执行所述接口自动化案例中的第一延迟任务的第一调度执行时间范围;
检索所述延迟表中各个第一延迟任务关联的延迟下次执行时间是否在所述第一调度执行时间范围内;
在检索到所述延迟表中的第一延迟任务关联的延迟下次执行时间在所述第一调度执行时间范围内,执行所述延迟下次执行时间在所述第一调度执行时间范围内的第一延迟任务,并在该第一延迟任务执行成功后,将执行成功的该第一延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第一延迟任务为当前发生更新。
可理解地,本实施例是对一个接口自动化案例进行说明,也即接口自动化案例只包含一个第一延迟任务;本实施例会通过delayJob调度执行延迟任务,首先通过delayJob检索延迟表中各个第一延迟任务关联的延迟下次执行时间,接着比对延迟下次执行时间和第一调度执行时间范围后,然后会通过delayJob执行延迟下次执行时间在第一调度执行时间范围内的第一延迟任务,最后在第一延迟任务调度执行成功后,更新延迟表中的与上述调度执行成功的第一延迟任务关联的延迟下次执行时间,也即将调度执行成功的第一延迟任务关联的延迟下次执行时间更新为第一延迟任务执行成功时间;本实施例将行成功的该第一延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,其意味着后续不需要再次进行第一延迟任务的调度执行。
在另一实施例中,在所述第一延迟任务执行失败后,将所述延迟表中与执行失败的第一延迟任务关联的延迟状态定义为失败状态。其中,延迟状态的失败状态表示为delayState=F,F为Fail。
进一步地,所述步骤S30之后,还包括:
获取与所述接口自动化案例关联的下一个预设自动化流程,并执行所述下一个预设自动化流程。
可理解地,在待执行延迟任务延迟成功执行后,若待执行延迟任务为发起退款时,下一个自动化流程可以为去数据库查询下游返回的退款流水。
进一步地,所述将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配之后,还包括:
在所述第一标识和所述延迟任务池中的所有第二标识均匹配失败时,令与所述第二标识对应的第二延迟任务继续在所述延迟任务池中等待;
在等待时长超过预设的第二时间阈值范围后,不再将所述第一延迟任务的第一标识与所述延迟池中等待的第二延迟任务的第二标识进行匹配,确认所述接口自动化案例的延迟任务延迟执行失败。
可理解地,在等待时长超过预设的第二时间阈值范围(相当于一个预设等待时长)后,不再将所述第一延迟任务的第一标识与延迟池中等待的第二延迟任务的第二标识进行匹配意味着延迟任务池中等待时长超过第二时间阈值范围的第一延迟任务将被丢弃掉;在另一实施例中,所述确认所述接口自动化案例的延迟任务延迟执行失败之后,根据延迟任务池中与接口自动化案例对应的接口自动化案例编号,通知接口自动化案例中的第一延迟任务延迟执行失败(也即对当前的接口自动化案例中止执行,确定自动化执行失败);
在另一实施例中,在等待时长未超过预设的第二时间阈值范围后,保留所述延迟任务池中的第一延迟任务,以后续实现第一延迟任务的第一标识与延迟池中等待的第二延迟任务的第二标识进行匹配。
进一步地,所述确认所述延迟表中的第一延迟任务发生更新,包括:
在包含待执行延迟任务的所述接口自动化案例为大于一个时,获取调度执行所述组动化案例中的第一延迟任务的第二调度执行时间范围和第三调度执行时间范围;所述第一延迟任务包括第三延迟任务、第四延迟任务、第五延迟任务和第六延迟任务,所述第三延迟任务和第五延迟任务关联所述第二调度执行时间范围,所述第四延迟任务和所述第六延迟任务关联所述第三调度执行时间范围;
检索所述延迟表中第三延迟任务和第五延迟任务关联的延迟下次执行时间是否在所述第二调度执行时间范围内;
在检索到所述延迟表中的第三延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第二间间隔内,执行所述延迟下次执行时间在所述时第二间间隔内的第三延迟任务和第五延迟任务,并在所述第三延迟任务和第四延迟任务执行成功后,将执行成功的第三延迟任务和第五延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第三延迟任务和第五延迟任务为当前发生更新;
检索所述延迟表中第四延迟任务和第六延迟任务关联的延迟下次执行时间是否在所述时第三间间隔内;
在检索到所述延迟表中的第四延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第三间间隔内,执行所述延迟下次执行时间在所述时第三间间隔内的第四延迟任务和第六延迟任务,并在所述第四延迟任务和第六延迟任务执行成功后,将执行成功的第四延迟任务和第五六延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第四延迟任务和第六延迟任务为当前发生更新。
可理解地,本实施例以四个接口自动化案例进行说明,也即以四个待执行延迟任务进行说明,但并不意味着本实施例局限于四个接口自动化案例,本实施例可根据具体使用情况设置所需数量的接口自动化案例,其中,在以四个接口自动化案例进行说明时,每两个接口自动化案例中的待执行延迟任务是相同,如两个待执行延迟任务可以为发起退款(案例1和案例2),另外两个待执行延迟任务可以为发起分账(案例3和案例4),另外在以六个接口自动化案例进行说明时,如三个待执行延迟任务可以为发起退款,另外三个待执行延迟任务可以为发起分账,另外在以六个接口自动化案例进行说明时,如二个待执行延迟任务可以为发起退款,另外二个待执行延迟任务可以为发起分账,剩余两个待执行延迟任务可以为发起付款,;实施例中涉及到两个调度执行时间范围,分别为第二调度执行时间范围(time1)和第三调度执行时间范围(time2),第三延迟任务和第五延迟任务是关联time1,第四延迟任务和第六延迟任务是关联time2,通过delayJob在time1调度执行时间范围会检索到案例1和案例3的delay延迟执行时间,在time2调度执行时间范围会检索到案例2和案例4的延迟下次执行时间;
本实施例中的四个待执行延迟任务写入延迟任务池后,自动化案例也是被挂起且等待延迟任务池通知;在另一实施例中,也存在与一个待执行任务相同的流程,如确认延迟表中的四个待执行延迟任务当前发生更新,将延迟表中与更新的四个待执行延迟任务关联的延迟状态定义为成功状态,并将与更新的第一延迟任务关联的延迟状态发送至延迟任务池中;在另一实施例中,也存在与一个接口自动化案例相同的流程(关于唯一标识的匹配过程、确定延迟执行成功的过程以及自动执行下一个预设自动化流程),如将第三延迟任务的第三标识与第五延迟任务的第五标识分别和延迟任务池中的第二标识进行匹配,在匹配成功时,确认接口自动化案例中的待执行延迟任务延迟执行成功,根据延迟任务池中与接口自动化案例对应的接口自动化案例编号,通知接口自动化案例中的第三延迟任务和第五延迟任务延迟执行成功,获取与接口自动化案例关联的下一个预设自动化流程,并执行下一个预设自动化流程,第四延迟任务和第六延迟任务同理可得,在此不再赘述;
本实施例支持多案例(多个接口自动化案例)同时写入延迟任务池后,同时确定接口自动化案例的待执行延迟任务的延迟执行结果,相比现有方法,明显节省对系统中内存的消耗。
综上所述,上述提供了一种接口自动化延迟执行结果的确认方法,在延迟执行成功时,确认延迟表中的第一延迟任务发生更新且更新的第一延迟任务关联的延迟状态为成功状态,此时可用更新后的第一延迟任务的第一标识和延迟任务池中的第二标识进行匹配,以确定是否延迟执行成功,可见,本发明能提高延迟执行过程获取延迟执行结果的及时性,避免出现由于等待时间过长而消耗过多内存的情况,或避免出现等待时间结束后还未获取延迟执行结果而导致与接口自动化案例关联的下一步自动化步骤执行失败的情况,进而可提高接口自动化案例执行的准确性;支持多案例(多个接口自动化案例)同时写入延迟任务池后,同时确定接口自动化案例的待执行延迟任务的延迟执行结果,相比现有方法,明显节省对系统中内存的消耗。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种接口自动化延迟执行结果的确认装置,该接口自动化延迟执行结果的确认装置与上述实施例中接口自动化延迟执行结果的确认方法一一对应。如图3所示,该接口自动化延迟执行结果的确认装置包括落库模块11、匹配模块12和第一确认模块13。各功能模块详细说明如下:
落库模块11,用于将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
匹配模块12,用于在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
第一确认模块13,用于在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
进一步地,所述接口自动化延迟执行结果的确认装置还包括:
检测模块,用于每隔预设的第一时间阈值轮询检测所述延迟表中的各个第一延迟任务是否发生更新;
第二确认模块,用于在所述第一时间阈值查询到所述第一延迟任务的更新信息为预设更新数值,确认所述延迟表中的第一延迟任务当前未发生更新;
第三确认模块,用于在所述第一时间阈值查询到所述第一延迟任务的更新信息大于预设更新数值,确认所述延迟表中的第一延迟任务当前发生更新,将所述延迟表中与更新的第一延迟任务关联的延迟状态定义为成功状态,并将与更新的第一延迟任务关联的延迟状态发送至所述延迟任务池中。
进一步地,所述匹配模块包括:
第一获取子模块,用于在包含待执行延迟任务的所述接口自动化案例为一个时,获取调度执行所述接口自动化案例中的第一延迟任务的第一调度执行时间范围;
第一检索子模块,用于检索所述延迟表中各个第一延迟任务关联的延迟下次执行时间是否在所述第一调度执行时间范围内;
第一更新子模块,用于在检索到所述延迟表中的第一延迟任务关联的延迟下次执行时间在所述第一调度执行时间范围内,执行所述延迟下次执行时间在所述第一调度执行时间范围内的第一延迟任务,并在该第一延迟任务执行成功后,将执行成功的该第一延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第一延迟任务为当前发生更新。
进一步,所述接口自动化延迟执行结果的确认装置还包括:
执行模块,用于获取与所述接口自动化案例关联的下一个预设自动化流程,并执行所述下一个预设自动化流程。
进一步地,所述接口自动化延迟执行结果的确认装置还包括:
等待模块,用于在所述第一标识和所述延迟任务池中的所有第二标识均匹配失败时,令与所述第二标识对应的第二延迟任务继续在所述延迟任务池中等待;
第四确认模块,用于在等待时长超过预设的第二时间阈值范围后,不再将所述第一延迟任务的第一标识与所述延迟池中等待的第二延迟任务的第二标识进行匹配,确认所述接口自动化案例的延迟任务延迟执行失败。
进一步地,所述匹配模块包括:
第二获取子模块,用于在包含待执行延迟任务的所述接口自动化案例为大于一个时,获取调度执行所述组动化案例中的第一延迟任务的第二调度执行时间范围和第三调度执行时间范围;所述第一延迟任务包括第三延迟任务、第四延迟任务、第五延迟任务和第六延迟任务,所述第三延迟任务和第五延迟任务关联所述第二调度执行时间范围,所述第四延迟任务和所述第六延迟任务关联所述第三调度执行时间范围;
第二检索子模块,用于检索所述延迟表中第三延迟任务和第五延迟任务关联的延迟下次执行时间是否在所述第二调度执行时间范围内;
第二更新子模块,用于在检索到所述延迟表中的第三延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第二间间隔内,执行所述延迟下次执行时间在所述时第二间间隔内的第三延迟任务和第五延迟任务,并在所述第三延迟任务和第四延迟任务执行成功后,将执行成功的第三延迟任务和第五延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第三延迟任务和第五延迟任务为当前发生更新;
第三检索子模块,用于检索所述延迟表中第四延迟任务和第六延迟任务关联的延迟下次执行时间是否在所述时第三间间隔内;
第三更新子模块,用于在检索到所述延迟表中的第四延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第三间间隔内,执行所述延迟下次执行时间在所述时第三间间隔内的第四延迟任务和第六延迟任务,并在所述第四延迟任务和第六延迟任务执行成功后,将执行成功的第四延迟任务和第五六延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第四延迟任务和第六延迟任务为当前发生更新。
关于接口自动化延迟执行结果的确认装置的具体限定可以参见上文中对于接口自动化延迟执行结果的确认方法的限定,在此不再赘述。上述接口自动化延迟执行结果的确认装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储接口自动化延迟执行结果的确认方法中涉及到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种接口自动化延迟执行结果的确认方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中接口自动化延迟执行结果的确认方法的步骤,例如图2所示的步骤S10至步骤S30。或者,处理器执行计算机程序时实现上述实施例中接口自动化延迟执行结果的确认装置的各模块/单元的功能,例如图3所示模块11至模块13的功能。为避免重复,这里不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中接口自动化延迟执行结果的确认方法的步骤,例如图2所示的步骤S10至步骤S30。或者,计算机程序被处理器执行时实现上述实施例中接口自动化延迟执行结果的确认装置的各模块/单元的功能,例如图3所示模块11至模块13的功能。为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种接口自动化延迟执行结果的确认方法,其特征在于,包括:
将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
2.根据权利要求1所述的接口自动化延迟执行结果的确认方法,其特征在于,所述将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中之后,还包括:
每隔预设的第一时间阈值轮询检测所述延迟表中的各个第一延迟任务是否发生更新;
在所述第一时间阈值查询到所述第一延迟任务的更新信息为预设更新数值,确认所述延迟表中的第一延迟任务当前未发生更新;
在所述第一时间阈值查询到所述第一延迟任务的更新信息大于预设更新数值,确认所述延迟表中的第一延迟任务当前发生更新,将所述延迟表中与更新的第一延迟任务关联的延迟状态定义为成功状态,并将与更新的第一延迟任务关联的延迟状态发送至所述延迟任务池中。
3.根据权利要求1所述的接口自动化延迟执行结果的确认方法,其特征在于,所述延迟表中的各个第一延迟任务均关联一个延迟下次执行时间;所述确认所述延迟表中的第一延迟任务发生更新,包括:
在包含待执行延迟任务的所述接口自动化案例为一个时,获取调度执行所述接口自动化案例中的第一延迟任务的第一调度执行时间范围;
检索所述延迟表中各个第一延迟任务关联的延迟下次执行时间是否在所述第一调度执行时间范围内;
在检索到所述延迟表中的第一延迟任务关联的延迟下次执行时间在所述第一调度执行时间范围内,执行所述延迟下次执行时间在所述第一调度执行时间范围内的第一延迟任务,并在该第一延迟任务执行成功后,将执行成功的该第一延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第一延迟任务为当前发生更新。
4.根据权利要求1所述的接口自动化延迟执行结果的确认方法,其特征在于,所述在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功之后,还包括:
获取与所述接口自动化案例关联的下一个预设自动化流程,并执行所述下一个预设自动化流程。
5.根据权利要求1所述的接口自动化延迟执行结果的确认方法,其特征在于,所述将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配之后,还包括:
在所述第一标识和所述延迟任务池中的所有第二标识均匹配失败时,令与所述第二标识对应的第二延迟任务继续在所述延迟任务池中等待;
在等待时长超过预设的第二时间阈值范围后,不再将所述第一延迟任务的第一标识与所述延迟池中等待的第二延迟任务的第二标识进行匹配,确认所述接口自动化案例的延迟任务延迟执行失败。
6.根据权利要求1所述的接口自动化延迟执行结果的确认方法,其特征在于,所述确认所述延迟表中的第一延迟任务发生更新,包括:
在包含待执行延迟任务的所述接口自动化案例为大于一个时,获取调度执行所述组动化案例中的第一延迟任务的第二调度执行时间范围和第三调度执行时间范围;所述第一延迟任务包括第三延迟任务、第四延迟任务、第五延迟任务和第六延迟任务,所述第三延迟任务和第五延迟任务关联所述第二调度执行时间范围,所述第四延迟任务和所述第六延迟任务关联所述第三调度执行时间范围;
检索所述延迟表中第三延迟任务和第五延迟任务关联的延迟下次执行时间是否在所述第二调度执行时间范围内;
在检索到所述延迟表中的第三延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第二间间隔内,执行所述延迟下次执行时间在所述时第二间间隔内的第三延迟任务和第五延迟任务,并在所述第三延迟任务和第四延迟任务执行成功后,将执行成功的第三延迟任务和第五延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第三延迟任务和第五延迟任务为当前发生更新;
检索所述延迟表中第四延迟任务和第六延迟任务关联的延迟下次执行时间是否在所述时第三间间隔内;
在检索到所述延迟表中的第四延迟任务和第五延迟任务关联的延迟下次执行时间在所述时第三间间隔内,执行所述延迟下次执行时间在所述时第三间间隔内的第四延迟任务和第六延迟任务,并在所述第四延迟任务和第六延迟任务执行成功后,将执行成功的第四延迟任务和第五六延迟任务关联的延迟下次执行时间更新为其任务执行成功的时间,并确认所述延迟表中的第四延迟任务和第六延迟任务为当前发生更新。
7.一种接口自动化延迟执行结果的确认装置,其特征在于,包括:
落库模块,用于将接口自动化案例中包含的待执行延迟任务作为第一延迟任务落库至预设的延迟表中,同时将所述接口自动化案例中包含的待执行延迟任务作为第二延迟任务写入至延迟任务池中;所述延迟表中的第一延迟任务均关联延迟状态和一个第一标识;所述延迟任务池的第二延迟任务均关联一个第二标识;
匹配模块,用于在确认所述延迟表中的第一延迟任务发生更新且更新的所述第一延迟任务关联的延迟状态为成功状态时,将更新的所述第一延迟任务的第一标识和所述延迟任务池中的第二标识进行匹配;
第一确认模块,用于在更新的所述第一延迟任务的第一标识和所述延迟任务池中的任意一个第二标识匹配成功时,确认所述接口自动化案例中的待执行延迟任务延迟执行成功。
8.根据权利要求7所述的接口自动化延迟执行结果的确认装置,其特征在于,所述接口自动化延迟执行结果的确认装置还包括:
检测模块,用于每隔预设的第一时间阈值轮询检测所述延迟表中的各个第一延迟任务是否发生更新;
第二确认模块,用于在所述第一时间阈值查询到所述第一延迟任务的更新信息为预设更新数值,确认所述延迟表中的第一延迟任务当前未发生更新;
第三确认模块,用于在所述第一时间阈值查询到所述第一延迟任务的更新信息大于预设更新数值,确认所述延迟表中的第一延迟任务当前发生更新,将所述延迟表中与更新的第一延迟任务关联的延迟状态定义为成功状态,并将与更新的第一延迟任务关联的延迟状态发送至所述延迟任务池中。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述接口自动化延迟执行结果的确认方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述接口自动化延迟执行结果的确认方法。
CN202111519226.9A 2021-12-13 2021-12-13 接口自动化延迟执行结果的确认方法、装置、设备及介质 Pending CN114185625A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111519226.9A CN114185625A (zh) 2021-12-13 2021-12-13 接口自动化延迟执行结果的确认方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111519226.9A CN114185625A (zh) 2021-12-13 2021-12-13 接口自动化延迟执行结果的确认方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN114185625A true CN114185625A (zh) 2022-03-15

Family

ID=80604744

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111519226.9A Pending CN114185625A (zh) 2021-12-13 2021-12-13 接口自动化延迟执行结果的确认方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114185625A (zh)

Similar Documents

Publication Publication Date Title
CN110069572B (zh) 基于大数据平台的hive任务调度方法、装置、设备及存储介质
CN107016480B (zh) 任务调度方法、装置及系统
CN106940699B (zh) 一种内存数据的同步处理方法、装置、服务器及系统
CN108446172B (zh) 数据调取方法、装置、计算机设备和存储介质
CN106202082B (zh) 组装基础数据缓存的方法及装置
CN110795171B (zh) 业务数据处理方法、装置、计算机设备及存储介质
CN110650164A (zh) 文件的上传方法、装置、终端以及计算机存储介质
WO2023082681A1 (zh) 基于批流一体的数据处理方法、装置、计算机设备和介质
CN113282580A (zh) 用于执行定时任务的方法、存储介质及服务器
WO2020253045A1 (zh) 配置化的数据转发异常补处理方法、装置及可读存储介质
CN114090113B (zh) 数据源处理插件动态加载的方法、装置、设备及存储介质
CN113949889A (zh) 对象处理方法、装置、电子设备及存储介质
US20120102168A1 (en) Communication And Coordination Between Web Services In A Cloud-Based Computing Environment
CN116521363B (zh) 一种代码打包方法、计算机设备及存储介质
CN114185625A (zh) 接口自动化延迟执行结果的确认方法、装置、设备及介质
CN112711466B (zh) 悬挂事务巡检方法和装置、电子设备和存储介质
CN114090268A (zh) 容器管理方法及容器管理系统
CN112217849B (zh) Sd-wan系统中的任务调度方法、系统和计算机设备
CN114942838A (zh) 一种数据访问方法、装置、设备以及存储介质
CN114968505A (zh) 任务处理系统、方法、装置、设备、存储介质及程序产品
US20210224272A1 (en) Method, device, computer apparatus, and storage medium for storing data
CN112765126B (zh) 数据库事务的管理方法、装置、计算机设备和存储介质
CN110784479B (zh) 一种数据校验方法、装置、电子设备及存储介质
CN114422577A (zh) 一种业务变更消息的处理方法及装置
CN113849291A (zh) 基于容器集群的任务处理方法、装置、设备、介质及产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination