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

业务执行方法、系统、介质及终端与流程

2022-11-14 22:43:37 来源:中国专利 TAG:


1.本发明属于业务处理技术领域,特别是涉及一种业务执行方法、系统、介质及终端。


背景技术:

2.目前大量的分布式系统,导致一个业务中往往存在多个微服务之间的互相调用,除此之外,还存在该分布式系统与银行、商业票据(commercial paper,简称cp)等大量第三方服务之间的互相调用,大量的服务调用,如果其中一个服务的网络出现阻塞,或者任何一个局部业务处理失败,都会造成业务中断,而要想继续执行该业务,需要用户主动重新发起业务执行操作,通常,一个业务中的子业务在执行时,前后都会有一定的时间限制,所以,在业务出现中断后,再次执行时,往往需要从头开始执行,这就会大大降低业务执行的效率,从而为用户带来不好的使用体验。


技术实现要素:

3.鉴于以上所述现有技术的缺点,本发明的目的在于提供一种业务执行方法、系统、介质及终端,用于解决现有技术中,业务出现中断后,再次执行需从头开始,使得业务执行效率降低的问题。
4.本发明的另一目的在于提供一种业务执行方法、系统、介质及终端,通过记录业务异常断点及在该业务异常断点处的业务数据,采用断点补偿方式,每间隔预设时间,定时发起业务异常断点处的业务执行操作,以基于该业务数据,从该业务异常断点处继续执行业务,提高了业务执行的效率,给用户带来了良好的使用体验。
5.本发明的又一目的在于提供一种业务执行方法、系统、介质及终端,通过使用端对业务进行拆分和重排序,在不影响业务最终执行结果的前提下,提高了业务的执行效率。
6.为实现上述目的及其他相关目的,一方面,本发明提供一种业务执行方法,包括以下步骤:获取一业务被拆分后,产生的多个子业务;对多个所述子业务进行重排序,并按照重排序后的顺序执行多个所述子业务;在执行过程中,若任意一所述子业务出现异常,则记录业务异常断点及异常前对应的业务数据,并停止执行顺序位于异常的子业务后的子业务;所述业务异常断点为所述异常的子业务在重排序后的多个子业务中的位置;每间隔预设时间,读取一次所述业务数据,并从所述业务异常断点处开始,基于所述业务数据,继续执行所述异常的子业务及所述顺序位于异常的子业务后的子业务,直至所述业务完全执行成功。
7.为实现上述目的及其他相关目的,另一方面,本发明提供一种业务执行系统,包括:获取模块、重排序模块、记录模块及断点补偿模块;所述获取模块用于获取一业务被拆分后,产生的多个子业务;所述重排序模块用于对多个所述子业务进行重排序,并按照重排序后的顺序执行多个所述子业务;所述记录模块用于在执行过程中,若任意一所述子业务出现异常,则记录业务异常断点及异常前对应的业务数据,并停止执行顺序位于异常的子
业务后的子业务;所述业务异常断点为所述异常的子业务在重排序后的多个子业务中的位置;所述断点补偿模块用于每间隔预设时间,读取一次所述业务数据,并从所述业务异常断点处开始,基于所述业务数据,继续执行所述异常的子业务及所述顺序位于异常的子业务后的子业务,直至所述业务完全执行成功。
8.为实现上述目的及其他相关目的,又一方面,本发明提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述的业务执行方法。
9.为实现上述目的及其他相关目的,再一方面,本发明提供一种终端,包括:处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行上述的业务执行方法。
10.为实现上述目的及其他相关目的,再一方面,本发明提供一种业务执行系统,包括:上述的终端和使用端;所述使用端用于拆分业务,并将拆分所述业务后产生的多个子业务一一发送至所述终端。
附图说明
11.图1显示为本发明的业务执行方法于一实施例中的原理流程图。
12.图2显示为本发明的业务执行方法于一实施例中的流程图。
13.图3显示为本发明的对多个子业务进行重排序于一实施例中的流程图。
14.图4显示为本发明的业务执行系统于一实施例中的结构示意图。
15.图5显示为本发明的终端于一实施例中的结构示意图。
16.图6显示为本发明的业务执行系统于另一实施例中的结构示意图。
17.标号说明
18.41
ꢀꢀꢀꢀꢀꢀꢀꢀ
获取模块
19.42
ꢀꢀꢀꢀꢀꢀꢀꢀ
重排序模块
20.43
ꢀꢀꢀꢀꢀꢀꢀꢀ
记录模块
21.44
ꢀꢀꢀꢀꢀꢀꢀꢀ
断点补偿模块
22.51
ꢀꢀꢀꢀꢀꢀꢀꢀ
处理器
23.52
ꢀꢀꢀꢀꢀꢀꢀꢀ
存储器
24.61
ꢀꢀꢀꢀꢀꢀꢀꢀ
终端
25.62
ꢀꢀꢀꢀꢀꢀꢀꢀ
使用端
26.s1~s4
ꢀꢀꢀꢀ
步骤
27.s21~s22
ꢀꢀ
步骤
具体实施方式
28.以下通过特定的具体实施例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
29.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构
想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
30.本发明的业务执行方法、系统、介质及终端,通过记录业务异常断点及在该业务异常断点处的业务数据,采用断点补偿方式,每间隔预设时间,定时发起业务异常断点处的业务执行操作,以基于该业务数据,从该业务异常断点处继续执行业务,提高了业务执行的效率,给用户带来了良好的使用体验;通过使用端对业务进行拆分和重排序,在不影响业务最终执行结果的前提下,提高了业务的执行效率。
31.如图1所示,于一实施例中,将本发明的业务执行方法应用于一终端,用于执行图1中的业务a;具体地,该业务执行方法的工作原理如下:
32.首先,在使用端(用户)对该业务a进行拆分,以将该业务a拆分成多个子业务,分别为:子业务1、子业务2、子业务4、子业务5、子业务6、子业务7
……
子业务xx,该使用端每拆分出一个子业务,即将其发送至该终端,当该使用端将所有的子业务一一发送至该终端后,即在该终端形成一包含业务a的所有子业务的业务链。
33.然后,该终端在不影响该业务a最终执行结果的情况下,对上述的整个业务链进行分析和重排序;诸如,将该业务链中的两个子业务的执行顺序倒置,和/或将该业务链中的至少两个子业务的执行顺序由原来的串行变为现在的并行;具体地,参考图1,经该终端对该业务链进行重排序后,子业务4最先执行,子业务2和子业务5(子业务5在子业务2之后执行),与子业务1同时执行,即可并行,且子业务2是在子业务4执行后,才能执行,子业务1是在子业务4和子业务5均执行后,才开始执行,子业务3在子业务1执行后,开始执行,子业务6在子业务3之后执行,对应该业务a的剩余其它子业务按照重排序之前的顺序(子业务6

子业务7
……
子业务xx),依次执行。
34.需要说明的是,上述终端对于整个业务链的重排序,一方面是基于使用端对业务a进行拆分时,获取的业务a中每个子业务的优先级,另一方面,是基于该终端获取该业务a的所有子业务后,对其进行具体执行内容的分析,所获取的子业务之间的依赖关系(一子业务是基于另一子业务实现的,也就是一子业务必须要在另一子业务执行后才能执行,诸如,上述的子业务1的执行是依赖于子业务5和子业务4的;子业务3的执行是依赖于子业务1的)。
35.紧接着,在按照上述重排序的顺序,进行所有子业务的执行时,若子业务1在执行过程中出现异常,无法正常执行,则此时,该终端会记录在该子业务1之前对应的业务数据(至少包括子业务4、子业务2及子业务5执行后,产生的相应数据),及该子业务1在重排序后的整个业务a中的位置(即业务异常断点),同时,该终端会控制结束子业务3、子业务6至子业务xx的执行。
36.最后,采用断点补偿方式,每间隔10s,该终端即读取一次上述记录的业务数据,并从子业务1所处的位置开始,基于该业务数据,继续执行该子业务1,直至该子业务1执行成功;在该子业务1执行成功后,该终端会继续控制接下来子业务3、子业务6
……
子业务xx的执行。
37.需要说明的是,如果在执行完子业务1,后续执行其它子业务的过程中,任意一子业务出现执行异常,则按照上述的步骤,直至该异常的子业务执行成功后,再继续后续子业务的执行,直至该业务a完全执行成功。
38.如图2所示,于一实施例中,本发明的业务执行方法应用一终端;具体地,该业务执行方法包括以下步骤:
39.步骤s1、获取一业务被拆分后,产生的多个子业务。
40.具体地,由使用端按照预定义需求对该业务进行拆分,获取拆分后的多个子业务,并将获取的多个子业务一一发送至该终端。
41.需要说明的是,该预定义需求的具体内容,即该使用端对该业务的具体拆分规则,不作为限制本发明的条件,可视不同的实际应用场景来设定。
42.优选地,该使用端将该业务拆分成具有最小颗粒度的多个子业务;该最小颗粒度是预设的用来表示每个子业务所包含的功能大小,通常,该最小颗粒度是指拆分后形成的每个子业务无法再进一步拆分执行;当然,也可以将两个或多个无法再进一步拆分执行的子业务作为该最小颗粒度,对该业务进行拆分。
43.进一步地,在该使用端对该业务进行拆分时,还会根据该业务中子业务的执行顺序,定义出每个子业务的优先级,并在将子业务发送至该终端的同时,将每个子业务的优先级也一并发送至该终端,以便后续该终端可根据该优先级,对该业务进行重排序优化。
44.步骤s2、对多个所述子业务进行重排序,并按照重排序后的顺序执行多个所述子业务。
45.需要说明的是,该终端在不影响该业务最终执行结果的情况下,对该多个子业务进行分析和重排序。
46.如图3所示,于一实施例中,对多个所述子业务进行重排序包括以下步骤:
47.步骤s21、对多个所述子业务的业务内容分别进行分析,获取两两所述子业务之间的依赖关系。
48.具体地,通过对每一子业务的具体执行内容进行分析,获取两两子业务之间的依赖关系。
49.需要说明的是,该依赖关系是指,一子业务的执行需要依赖于另一子业务的执行,即只有在另一子业务执行后,该子业务才能执行。
50.步骤s22、基于多个所述子业务的优先级和所述依赖关系,对多个所述子业务进行重排序。
51.需要说明的是,上述步骤s1中,经使用端对业务进行拆分的同时,该使用端会定义每一子业务的优先级,并将该优先级一并发送至该终端,以使该终端基于步骤s21中获取的两两子业务之间的依赖关系和每一子业务的优先级,对该多个子业务进行重排序。
52.于一实施例中,所述重排序的方法至少包括但并不限于:两个所述子业务的执行顺序倒置,和/或至少两个所述子业务的执行顺序由串行变为并行。
53.需要说明的是,通过将串行的子业务重排序成并行的执行顺序,提高了业务的整体执行效率。
54.步骤s3、在执行过程中,若任意一所述子业务出现异常,则记录业务异常断点及异常前对应的业务数据,并停止执行顺序位于异常的子业务后的子业务。
55.需要说明的是,所述业务异常断点为所述异常的子业务在重排序后的多个子业务中的位置;该业务数据至少包括在该异常的子业务之前执行的子业务,所对应产生的数据。
56.步骤s4、每间隔预设时间,读取一次所述业务数据,并从所述业务异常断点处开
始,基于所述业务数据,继续执行所述异常的子业务及所述顺序位于异常的子业务后的子业务,直至所述业务完全执行成功。
57.需要说明的是,该预设时间是预先设置好的,其具体为多少,并不作为限制本发明的条件,可视不同的实际应用场景来设定。
58.于一实施例中,上述步骤s4中,只有在所述异常的子业务正常执行后,所述顺序位于异常的子业务后的子业务才开始执行。
59.具体地,在上述步骤s4中,每间隔预设时间,即读取一次业务数据,并从该异常的子业务所处位置开始,基于该业务数据,执行该异常的子业务,直至该异常的子业务顺利执行,才开始位于该异常的子业务之后的子业务的执行(依赖于该异常的子业务执行的子业务)。
60.需要说明的是,如果在执行完该异常的子业务后,执行其后续其它子业务的过程中,任意一子业务出现执行异常,则按照上述的步骤(步骤s3和步骤s4),直至该异常的子业务执行成功后,再继续后续子业务的执行,直至该业务完全执行成功。
61.需要说明的是,上述的业务执行方法在任意子业务处理异常时,仍能够保证全局业务数据的一致性。
62.进一步地,该业务执行方法不仅适用于分布式系统中,也可适用于非分布式系统中,涉及第三方的api调用。
63.需要说明的是,本发明所述的业务执行方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本发明的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本发明的保护范围内。
64.如图4所示,于一实施例中,本发明的业务执行系统包括获取模块41、重排序模块42、记录模块43及断点补偿模块44。
65.所述获取模块41用于获取一业务被拆分后,产生的多个子业务。
66.所述重排序模块42用于对多个所述子业务进行重排序,并按照重排序后的顺序执行多个所述子业务。
67.所述记录模块43用于在执行过程中,若任意一所述子业务出现异常,则记录业务异常断点及异常前对应的业务数据,并停止执行顺序位于异常的子业务后的子业务。
68.需要说明的是,所述业务异常断点为所述异常的子业务在重排序后的多个子业务中的位置。
69.所述断点补偿模块44用于每间隔预设时间,读取一次所述业务数据,并从所述业务异常断点处开始,基于所述业务数据,继续执行所述异常的子业务及所述顺序位于异常的子业务后的子业务,直至所述业务完全执行成功。
70.需要说明的是,所述获取模块41、所述重排序模块42、所述记录模块43及所述断点补偿模块44的结构及原理与上述业务执行方法中的步骤(步骤s1~步骤s4)一一对应,故在此不再赘述。
71.需要说明的是,应理解以上系统的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,x模块可以为
单独设立的处理元件,也可以集成在上述系统的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述系统的存储器中,由上述系统的某一个处理元件调用并执行以上x模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
72.例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,简称asic),或,一个或多个数字信号处理器(digital signal processor,简称dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。
73.本发明的存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的业务执行方法。所述存储介质包括:只读存储器(read-only memory,rom)、随机访问存储器(random access memory,ram)、磁碟、u盘、存储卡或者光盘等各种可以存储程序代码的介质。
74.如图5所示,本发明的终端包括处理器51及存储器52。
75.所述存储器52用于存储计算机程序;优选地,所述存储器52包括:rom、ram、磁碟、u盘、存储卡或者光盘等各种可以存储程序代码的介质。
76.所述处理器51与所述存储器52相连,用于执行所述存储器52存储的计算机程序,以使所述终端执行上述的业务执行方法。
77.优选地,所述处理器51可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
78.如图6所示,于一实施例中,本发明的业务执行系统包括上述的终端61和使用端62。
79.具体地,所述使用端62用于拆分业务,并将拆分所述业务后产生的多个子业务一一发送至所述终端61。
80.于一实施例中,所述使用端62基于预定义需求拆分所述业务,以将所述业务拆分成多个具有预设最小颗粒度的子业务。
81.于一实施例中,所述使用端62还用于定义多个所述子业务的优先级,并将所述优先级发送至所述终端61。
82.需要说明的是,该业务执行系统的工作原理与上述业务执行方法的工作原理相同,所以,在此不再详细赘述。
83.需要说明的是,本发明的业务执行系统可以实现本发明的业务执行方法,但本发明的业务执行方法的实现装置包括但不限于本实施例列举的业务执行系统的结构,凡是根
据本发明的原理所做的现有技术的结构变形和替换,都包括在本发明的保护范围内。
84.综上所述,本发明的业务执行方法、系统、介质及终端,通过记录业务异常断点及在该业务异常断点处的业务数据,采用断点补偿方式,每间隔预设时间,定时发起业务异常断点处的业务执行操作,以基于该业务数据,从该业务异常断点处继续执行业务,提高了业务执行的效率,给用户带来了良好的使用体验;通过使用端对业务进行拆分和重排序,在不影响业务最终执行结果的前提下,提高了业务的执行效率;所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
85.上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
再多了解一些

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

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

相关文献