计算;推算;计数设备的制造及其应用技术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.图1为本发明实施例提供的程序执行方法的方法流程图;40.图2为本发明实施例提供的程序执行方法的部分方法流程图;41.图3为本发明实施例提供的程序执行方法的另一部分方法流程图;42.图4为本发明实施例提供的程序执行装置的结构示意图。具体实施方式43.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。44.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。45.参见图1,图1为本发明实施例提供的程序执行方法的方法流程图,该程序执行方法包括如下步骤:46.s10,响应批量程序的启动操作,依次执行主流程上各节点的代码。47.本发明实施例中,监测到批量程序启动后,可以响应该批量程序的启动操作,以此执行批量程序的主流程上各节点的代码。48.需要说明的是,在实际应用中,批量程序的主流程上各节点是预先设置好的,与批量程序所实现的业务有关。49.在具体实现过程中,可以通过在数据库中设置关联表来实现批量程序的启动,步骤s10中“依次执行主流程上各节点的代码”可以采用如下步骤,方法流程图如图2所示:50.s101,调取数据库中预先建立的关联表,关联表中记录有主流程上各节点的节点标号、以及与各节点的节点标号对应的应急操作。51.本发明实施例中,可以按照批量程序的主流程上各节点的位置,对各节点设置节点标号,在主流程上位置越靠前的节点、其节点标号也就越靠小,相应的,也就越早执行该节点。52.进而,将批量程序的主流程上各节点的节点标号记录在数据库的关联表中,此外,对于各节点可以通过人工数据分析得到其可能出现的错误类型、并给出不同错误类型的应急操作,进而将主流程上各节点的节点标号与不同错误类型的应急操作进行绑定,记录于关联表中。53.s102,按照关联表中各节点的节点标号,从数据库中依次查询各节点的代码,并执行所查询到的代码。54.本发明实施例中,在批量程序启动后,可以按照关联表中各节点的节点标号,依次从数据库中查询各节点的代码,进而执行当前查询到的代码。55.s20,如果当前所执行的第一节点的代码处于中断状态,确定第一节点的应急操作,并执行应急操作。56.本发明实施例中,批量程序的主流程上当前执行的节点,即为第一节点。如果第一节点的代码执行出现错误,第一节点的代码处于中断状态(即第一节点的代码不再运行),此时可以根据第一节点的代码的错误类型确定对应的应急操作,并执行该应急操作。举例来说,如果错误类型为“单个数据错误”,则应急操作为跳过数据;如果错误类型为“节点宕机”,则应急操作为跳过或重启节点等。57.具体的,在确定第一节点的应急操作时,可以根据第一节点的节点标号,从关联表中确定对应的应急操作。具体的,根据第一节点的节点标号对关联表进行查询,确定错误类型对应的应急操作,当然,部分节点可能不设置错误类型,此时即可以按照第一节点的节点标号确定对应的应急操作,本发明实施例对此不做限定。58.由此,可以按照第一节点的节点标号,将第一节点的代码的错误类型记录至数据库中,以便使用者后续及时查看节点错误。59.此外,还可以按照第一节点的节点标号,将应急操作记录至数据库中,以便使用者及时查看应急操作的执行情况。60.s30,如果应急操作执行完毕后第一节点的代码处于中断状态,计算第一节点被跳过对第二节点的数据影响范围,并从第二节点中选择数据影响范围低于预设阈值的目标节点进行执行;61.第二节点为主流程上位于第一节点之后的节点。62.本发明实施例中,每次应急操作执行完毕后均需要监测第一节点的代码的状态。如果应急操作的执行次数超过规定的次数、且该第一节点的代码仍处于中断状态,此时可以确定应急操作对该第一节点的代码无效;当然,如果在规定的次数内,经过应急操作的执行,第一节点的代码从中断状态切换至运行状态,则可以确定应急操作对第一节点的代码有效,此时可以按照原有流程继续执行。63.一旦确定应急操作对该第一节点的代码无效,则需要跳过第一节点,进而计算第一节点被跳过对第二节点的数据影响范围,进一步从第二节点中选择数据影响范围低于预设阈值的节点(即目标节点)进行执行,即跳过第一节点继续执行目标节点的代码。64.需要说明的是,第二节点为批量程序的主流程上节点标号小于第一节点的其它节点。65.具体实现过程中,步骤s30中“计算第一节点被跳过对第二节点的数据影响范围”可以采用如下步骤,方法流程图如图3所示:66.s301,确定第一节点的代码已执行的第一数据、以及未执行的第二数据。67.本发明实施例中,可以监测第一节点的代码已执行的数据(即第一数据)、以及未执行的数据(即第二数据)。68.s302,根据第一数据的数据量和第二数据的数据量,确定第一节点被跳过对第一节点的数据影响范围。69.本发明实施例中,第一节点被跳过对其自身的数据影响范围可以按照如下步骤计算:70.1)计算第一数据的数据量与第二数据的数据量的总和,即第一节点的总数据量;71.2)将第二数据的数据量与第一节点的总数据量的比值,作为第一节点被跳过对第一节点的数据影响范围,即第一节点的数据影响范围。72.后续,按照主流程上节点的代码的执行次序,依次对主流程上位于第一节点之后的节点,即第二节点的数据影响范围进行计算。73.s303,对于在主流程上与第一节点相邻的第二节点,根据该第二节点对第二数据的调用状态、以及第一节点的数据影响范围,确定第一节点被跳过对该第二节点的数据影响范围。74.本发明实施例中,对于某一第二节点来说,如果该第二节点的代码在执行时需要调用第二数据,则认定第一节点被跳过会影响该第二节点,此时可以按照该第二节点对第二数据的调用状态、以及第一节点的数据影响范围确定第一节点被跳过对该第二节点的数据影响范围;反之,如果该第二节点的代码在执行时无需调用第一数据和第二数据、或者需要调用第一数据,则认定第一节点被跳过不会影响该第二节点,此时可以确定第一节点被跳过对该第二节点的数据影响范围为0。75.具体的,对于在主流程上与第一节点相邻的第二节点(即主流程上第一节点的下一节点),按照该第二节点对第二数据的调用状态、以及第一节点的数据影响范围确定第一节点被跳过对该第二节点的数据影响范围,可以按照如下步骤计算:76.1)确定第二数据中被该第二节点所调用的数据(后续称之为第一目标数据)的数据量;77.2)进而考虑该第二节点的代码执行时所需执行数据的数据量(后续称之为该第二节点的总数据量);78.3)计算第一目标数据的数据量与该第二节点的总数据量的比值,以此表征该第二节点对第一节点的调用状态;79.4)将目标数据的数据量与该第二节点的总数据量的比值、以及第一节点的数据影响范围的乘积作为第一节点被跳过对该第二节点的数据影响范围,即该第二节点的数据影响范围。80.s304,对于在主流程上不与第二节点相邻的第二节点,根据该第二节点对第二数据的调用状态、第一节点的数据影响范围、以及主流程上位于该第二节点之前其他第二节点的数据影响范围,确定第一节点被跳过对该第二节点的数据影响范围。81.本发明实施例中,对于在主流程上与第一节点不相邻的第二节点,可以按照如下步骤计算该第二节点的数据影响范围:82.1)确定第二数据中被该第二节点所调用的数据(后续称之为第二目标数据)的数据量;83.2)进而考虑该第二节点的代码执行时所需执行数据的数据量(后续称之为该第二节点的总数据量);84.3)计算第二目标数据的数据量与该第二节点的总数据量的比值,以此表征该第二节点对第一节点的调用状态;85.4)确定主流程上位于该第二节点之前其它第二节点的数据影响范围,举例来说,假设该第二节点为第二节点4、主流程上位于该第二节点之前其它第二节点包括第二节点1、第二节点2和第二节点3,则获取第二节点1、第二节点2和第二节点3各自的数据影响范围;86.5)继续以上述举例来说明,将目标数据的数据量与该第二节点的总数据量的比值、第二节点1的数据影响范围、第二节点2的数据影响范围、第二节点3的数据影响范围、以及第一节点的数据影响范围的乘积作为第一节点被跳过对该第二节点4的数据影响范围,即该第二节点4的数据影响范围。87.在此基础上,可以进一步记录下记录第二数据,并在第一节点的代码由中断状态切换为运行状态的情况下,则执行第二数据。具体的,按照该第一节点的节点标号将其第二数据记录至数据库,后续该第一节点的代码运行恢复,即由中断状态切换为运行状态后,则继续执行该第二数据。88.由此,可以尽量减少因为节点的代码执行错误而又重复执行造成的数据污染,只有在数据影响范围可控的前提才可以继续执行,在上述执行过程中也会将未执行完毕的节点以及未执行数据记录,当节点运行恢复以后会将未执行的数据重新执行。对此,可以在批量程序某一节点出现问题时,在保证数据污染可控前提尽量减少对程序执行结果的影响。89.本发明实施例提供的程序执行方法,可以在批量程序启动后,对中断的节点进行应急处理,并在应急处理中断的节点也无法恢复运行时,考虑中断的节点被跳过对后续节点的数据影响范围,从后续节点中选择数据影响范围较小的节点继续执行,以此保证批量程序的有效执行,并减少节点中断又重复执行所造成的数据污染,提升批量程序的执行效率。90.基于上述实施例提供的程序执行方法,本发明实施例还对应提供一种执行上述程序执行方法的装置,该装置的结构示意图如图4所示,包括:91.代码执行模块10,用于响应批量程序的启动操作,依次执行主流程上各节点的代码;92.应急执行模块20,用于如果当前所执行的第一节点的代码处于中断状态,确定第一节点的应急操作,并执行应急操作;93.代码执行模块10,还用于如果应急操作执行完毕后第一节点的代码处于中断状态,计算第一节点被跳过对第二节点的数据影响范围,并从第二节点中选择数据影响范围低于预设阈值的目标节点进行执行;第二节点为主流程上位于第一节点之后的节点。94.可选的,用于依次执行主流程上各节点的代码的代码执行模块10,具体用于:95.调取数据库中预先建立的关联表,关联表中记录有主流程上各节点的节点标号、以及与各节点的节点标号对应的应急操作;按照关联表中各节点的节点标号,从数据库中依次查询各节点的代码,并执行所查询到的代码;96.相应的,用于确定第一节点的应急操作的应急执行模块20,具体用于:97.根据第一节点的节点标号,从关联表中确定对应的应急操作。98.可选的,代码执行模块10,还用于:99.按照第一节点的节点标号,将应急操作记录至数据库中。100.可选的,用于计算第一节点被跳过对第二节点的数据影响范围的代码执行模块10,具体用于:101.确定第一节点的代码已执行的第一数据、以及未执行的第二数据;根据第一数据的数据量和第二数据的数据量,确定第一节点被跳过对第一节点的数据影响范围;对于在主流程上与第一节点相邻的第二节点,根据该第二节点对第二数据的调用状态、以及第一节点的数据影响范围,确定第一节点被跳过对该第二节点的数据影响范围;对于在主流程上不与第二节点相邻的第二节点,根据该第二节点对第二数据的调用状态、第一节点的数据影响范围、以及主流程上位于该第二节点之前其他第二节点的数据影响范围,确定第一节点被跳过对该第二节点的数据影响范围。102.可选的,代码执行模块10,还用于:103.记录第二数据,并在第一节点的代码由中断状态切换为运行状态的情况下,则执行第二数据。104.需要说明的是,本发明实施例各模块的细化功能可以参见上述程序执行方法实施例对应公开部分,在此不再赘述。105.基于上述实施例提供的程序执行方法,本发明实施例还提供一种电子设备,电子设备包括:至少一个存储器和至少一个处理器;存储器存储有应用程序,处理器调用存储器存储的应用程序,应用程序用于实现程序执行方法。106.基于上述实施例提供的程序执行方法,本发明实施例还提供一种存储介质,存储介质存储有计算机程序代码,计算机程序代码执行时实现程序执行方法。107.需要说明的是,本发明提供的程序执行方法、装置、电子设备及存储介质可用于人工智能领域或金融领域。上述仅为示例,并不对本发明提供的程序执行方法、装置、电子设备及存储介质的应用领域进行限定。108.以上对本发明所提供的一种程序执行方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。109.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。110.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素,或者是还包括为这些过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。111.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
程序执行方法、装置、电子设备及存储介质与流程 专利技术说明
作者:admin
2022-11-26 13:15:06
884
关键词:
计算;推算;计数设备的制造及其应用技术
专利技术