一种分布式事务补偿方法、装置、设备及介质与流程

文档序号:32213426发布日期:2022-11-16 06:46阅读:91来源:国知局
一种分布式事务补偿方法、装置、设备及介质与流程

1.本技术实施例涉及计算机技术领域,尤其涉及一种分布式事务补偿方法、装置、设备及介质。


背景技术:

2.随着分布式架构特别是微服务的普及,分布式事务问题成为大多数应用系统必须面对和解决的问题。目前业界常见的相对较为成熟的分布式事务补偿方法,往往要求分布式事务参与的应用系统均为同构应用系统,或者引入分布式事务客户端组件。上述分布式事务补偿方法无法实现异构应用系统间的分布式事务的补偿,兼容性较差。


技术实现要素:

3.本技术提供一种分布式事务补偿方法、装置、设备及介质,以提高分布式事务补偿方法的兼容性和普适性。
4.第一方面,本技术实施例提供了一种分布式事务补偿方法,包括:
5.获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后;
6.运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;
7.在服务方法执行完毕后,确定服务方法中的待补偿事务;
8.确定服务方法中的待补偿事务;
9.根据事务补偿数据,对待补偿事务执行事务补偿操作。
10.第二方面,本技术实施例还提供了一种分布式事务补偿装置,包括:
11.待补偿事务获取模块,用于获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后;
12.事务补偿数据确定模块,用于运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;
13.待补偿事务确定模块,用于在服务方法执行完毕后,确定服务方法中的待补偿事务;
14.待补偿事务补偿模块,用于根据事务补偿数据,对待补偿事务执行事务补偿操作。
15.第三方面,本技术实施例还提供了一种电子设备,包括:
16.至少一个处理器;以及
17.与至少一个处理器通信连接的存储器;其中
18.存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够实现如第一方面实施例所提供的分布式事务补偿方法。
19.第四方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所提供的分布式事务补偿方法。
20.本技术实施例通过获取待处理事务;其中,待处理事务包括执行外层组件和服务
方法,执行外层组件添加在服务方法执行前后;运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;在服务方法执行完毕后,确定服务方法中的待补偿事务;根据事务补偿数据,对待补偿事务执行事务补偿操作。采用该技术方案,通过在服务方法前后添加执行外层组件,确定事务补偿数据和待补偿事务,并根据事务补偿数据对待补偿事务执行事务补偿,无需通过引入分布式事务客户端组件等进行较大改动,即可实现异构应用系统间的分布式事务的补偿,提高了分布式事务补偿方法的兼容性和普适性。
附图说明
21.图1是本技术实施例一中的一种分布式事务补偿方法的流程图;
22.图2是本技术实施例二中的一种分布式事务补偿方法的流程图;
23.图3是本技术实施例三中的一种分布式事务补偿设备的结构图;
24.图4是本技术实施例四中的一种电子设备的结构图。
具体实施方式
25.下面结合附图和实施例对本技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部结构。
26.实施例一
27.图1为本技术实施例一提供的一种分布式事务补偿方法的流程图,本实施例可适用于对异构应用系统间的分布式事务进行补偿的情况,该方法可以由分布式事务补偿装置来执行,该装置由软件和/或硬件实现,并具体配置于电子设备中。该电子设备可以是异构应用系统自身,或与异构应用系统局部通信连接的其他计算设备。
28.如图1所示的分布式事务补偿方法,包括:
29.s101、获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后。
30.其中,待处理事务可以包括至少一个执行事务,执行事务可以理解为待处理事务中的事务执行环节。例如,待处理事务可以是贷款事务,包括申请、授信、额度扣除和放款四个执行事务。
31.其中,服务方法可以用来执行待处理事务中的执行事务。其中,执行外层组件为包络在服务方法外部的组件,可以根据执行外层组件添加位置不同,将添加在服务方法执行前的执行外层组件作为前执行外层组件,用于确定待处理事务补偿所需的数据;将添加在服务方法执行后的执行外层组件作为后执行外层组件,用于进行事务补偿。本技术对执行外层组件不作限定。示例性的,执行外层组件可以是aop(aspect oriented programming,面向切面编程)切面,还可以是过滤器、拦截器或总控等。
32.s102、运行待处理事务,以在服务方法执行过程中,确定事务补偿数据。
33.其中,事务补偿数据可以是待处理事务中各执行事务对应的数据,用于作为后续进行事务补偿的依据。在运行待处理事务时,先执行前执行外层组件,创建存储数据的数据实体,再执行服务方法。在服务方法执行过程中,根据待处理事务中各执行事务的执行顺序,在各个执行事务执行结束后,将相应的执行事务的事务补偿数据,依次存储在数据实体
中。
34.s103、在服务方法执行完毕后,确定服务方法中的待补偿事务。
35.其中,待补偿事务可以是服务方法整体执行失败情况下,已执行成功的执行事务和/或执行结果未知的执行事务。可以在服务方法执行完毕后,基于执行后执行外层组件,根据服务方法的执行结果(也即待处理事务的整体执行结果)和待处理事务中各执行事务的执行结果,确定服务方法中的待补偿事务。
36.在一个可选实施例中,若服务方法中各执行事务均执行失败,无需确定待补偿事务;若服务方法执行失败,且存在至少一个执行事务执行成功或执行结果未知,则将相应执行事务作为待补偿事务。
37.s104、根据事务补偿数据,对待补偿事务执行事务补偿操作。
38.其中,事务补偿操作即是对待补偿事务进行事务补偿,从而使待处理事务回退到未运行之前的状态的操作。可以根据各执行事务对应事务补偿数据的生成顺序,依次从数据实体中取出待补偿事务对应的事务补偿数据,并根据本次获取到的待补偿事务的事务补偿数据,对相应待补偿事务进行事务补偿。
39.具体的,可以按照各执行事务对应事务补偿数据的生成顺序的相反顺序,依次获取待补偿事务的事务补偿数据,并采用获取到的待补偿事务的事务补偿数据,对相应待补偿事务进行事务补偿。
40.本技术实施例通过获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后;运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;在服务方法执行完毕后,确定服务方法中的待补偿事务;根据事务补偿数据,对待补偿事务执行事务补偿操作。采用该技术方案,通过在服务方法前后添加执行外层组件,确定事务补偿数据和待补偿事务,并根据事务补偿数据对待补偿事务执行事务补偿,能够进行异构应用系统间的分布式事务的补偿,提高了分布式事务补偿方法的兼容性。
41.实施例二
42.图2为本技术实施例二提供的一种分布式事务补偿方法的流程图,本实施例在上述各实施例的基础上,对事务补偿数据的确定操作进行了优化改进。
43.进一步地,将“事务补偿数据”细化为“事务补偿数据包括事务补偿策略和事务补偿元素”;相应的,将“在服务方法执行过程中,确定事务补偿数据”细化为“在服务方法执行过程中,根据服务方法中各执行事务之间的执行顺序,确定各执行事务的事务补偿策略;根据各执行事务的执行依赖数据,确定相应执行事务的事务补偿元素;将各执行事务的事务补偿数据,顺序存储至补偿数据实体中”,以完善事务补偿数据的确定机制。
44.需要说明的是,在本技术实施例中未详述部分,可参见前述实施例的表述。
45.如图2所示的分布式事务补偿方法,包括:
46.s201、获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后。
47.s202、运行待处理事务,在服务方法执行过程中,根据服务方法中各执行事务之间的执行顺序,确定各执行事务的事务补偿策略。
48.其中,事务补偿策略可以是各执行事务后续作为待补偿事务进行事务补偿时,所
依照的补偿顺序。
49.在一个可选实施例中,若服务方法中各执行事务之间的执行顺序是并行执行,则将事务补偿策略确定为并行策略。具体的,并行策略可以是与策略,用于指示对相应待补偿事务并行执行补偿操作,且补偿操作执行成功的条件为各执行事务补偿操作均执行成功;事务补偿策略还可以是或并策略,用于指示对相应待补偿事务并行执行补偿操作,且补偿操作执行成功的条件为存在待补偿事务的补偿操作执行成功。
50.在另一个可选实施例中,若服务方法中各执行事务之间的执行顺序是串行执行,则将事务补偿策略确定为串行策略。具体的,事务补偿策略可以是或串策略,用于指示对相应待补偿事务串行执行补偿操作,且补偿操作执行成功的条件为每次补偿的待补偿事务补偿成功。
51.s203、根据各执行事务的执行依赖数据,确定相应执行事务的事务补偿元素。
52.其中,执行依赖数据可以包括但不限于执行事务中的各个功能服务,以及各个功能服务对应的输入数据和中间数据等。事务补偿元素可以是各执行事务的数据元素,包括但不限于事务补偿接口和补偿基础数据。
53.其中,事务补偿接口可以是后续补偿相应执行事务时,所依赖的功能服务对应接口。可以根据执行事务执行时所依赖的功能服务,确定相应执行事务的补偿接口。示例性的,执行事务为转账事务,则相应的补偿接口为转账功能接口。
54.其中,补偿基础数据可以是后续补偿相应执行事务时,所依赖的功能服务对应接口的输入数据。可以根据执行事务执行时所依赖的输入数据和中间数据,确定相应接口的输入数据,作为补偿基础数据。示例性的,执行事务为转账事务,则将转账过程的转入账户作为补偿时的转出账户,将转账过程的转出账户作为补偿时的转入账户,将转账过程的转账金额作为补偿时的转账金额,从而生成包括补偿时的转入账户、转出账户和转账金额的补偿基础数据。
55.可以理解的是,采用上述技术方案,根据执行事务依赖的功能服务、输入数据和中间数据确定相应执行事务的补偿接口和补偿基础数据,提高了事务补偿元素的全面性和准确性,进而提高了事务补偿操作的准确性。
56.s204、将各执行事务的事务补偿数据,顺序存储至补偿数据实体。
57.为了便于进行事务补偿数据的获取,可以预先设置专用于存储事务补偿数据的补偿数据实体。
58.可选的,在执行服务方法之前,创建补偿数据实体。具体的,在服务方法执行之前,执行前执行外层组件,创建用于存储事务补偿数据的数据结构。相应的,在运行各执行事务时,将相应执行事务的事务补偿数据顺序存储至补偿数据实体。
59.在一个可选实施例中,可以根据各执行事务的执行顺序,将各个执行事务的事务补偿数据分别划分成元素组,依次将各执行事务的事务补偿数据对应的元素组存储至补偿数据实体中。具体的,将先执行的执行事务对应的元素组先存储至补偿数据实体中,将后执行的执行事务对应的元素组后存储至补偿数据实体中。
60.可以理解的是,采用上述技术方案,创建补偿数据实体,将各执行事务的补偿数据划分成元素组存储至补偿数据实体中,可以在对待补偿事务进行事务补偿操作时,按顺序的从补偿数据实体中取出相应数据,提高了待补偿事务进行事务补偿操作的效率和准确
性。
61.示例性的,可以将并行执行的执行事务的事务补偿数据划分成一个元素组,以及将串行执行的各执行事务的事务补偿数据分别划分成一个元素组;根据各执行事务的执行顺序,将相应元素组顺序存储至补偿数据实体中。具体的,将先执行的执行事务对应的元素组先存储至补偿数据实体中,将后执行的执行事务对应的元素组后存储至补偿数据实体中。
62.可以理解的是,采用上述技术方案,将并行执行的执行事务划分成一个元素组,并存储在补偿数据实体中,避免各个并行执行的执行事务单独存储,造成的存储资源的浪费。同时,后续并行执行的执行事务均作为待补偿事务时,可以并行进行各待补偿事务的获取和补偿,简化了存储事务补偿数据的流程,提高了存储事务补偿数据的效率,进而提高了分布式事务补偿的效率。
63.s205、在服务方法执行完毕后,确定服务方法中的待补偿事务。
64.示例性的,在服务方法执行完毕后,判断服务方法整体是否执行成功,并在整体失败的情况下,将服务方法中执行成功和/或执行结果未知的执行事务作为待补偿事务。
65.s206、根据事务补偿数据,对待补偿事务执行事务补偿操作。
66.可选的,根据各待补偿事务的执行顺序的相反顺序,依次从补偿数据实体中获取未补偿的待补偿事务作为当前补偿事务。具体的,将后执行的待补偿事务从补偿数据实体中先取出作为当前补偿事务,将先执行的待补偿事务从补偿数据实体中后取出作为后续的补偿事务。优选的,补偿数据实体的数据结构是一种按照先进后出方式存储数据的数据结构,例如是栈数据结构,以实现按照各执行事务的执行顺序的相反顺序,依次从补偿数据实体中获取未补偿的待补偿事务。
67.可选的,按照当前补偿事务的事务补偿策略,根据相应事务补偿元素,对当前补偿事务执行补偿操作。
68.具体的,针对各待补偿事务,可以调用该待补偿事务相应事务补偿数据的事务补偿元素中的事务补偿接口,并根据相应事务补偿元素中的补偿基础数据,对当前补偿事务执行补偿操作。
69.可以理解的是,采用上述技术方案,根据事务补偿元素中的事务补偿接口和补偿基础数据对当前补偿事务执行补偿操作,提高了对当前补偿事务执行补偿操作的便捷性,进而提高了分布式事务的补偿效率。
70.在一个可选实施例中,若待补偿事务的数量大于一个,则按照当前补偿事务的事务补偿策略,根据当前补偿事务的事务补偿元素,对当前补偿事务执行补偿操作。
71.示例性的,若当前补偿事务的事务补偿策略为与策略,或者当前补偿事务的事务补偿策略为或并策略,则从补偿数据实体中获取可并行执行的各执行事务的元素组,得到相应待补偿事务的事务补偿元素;调用该事务补偿元素中的各事务补偿接口,根据该事务补偿元素中的相应补偿基础数据,并行执行当前补偿事务中各待补偿事务的补偿操作。
72.示例性的,若当前补偿事务的事务补偿策略为或串策略,则从补偿数据实体中获取当前补偿事务的事务补偿元素,并调用该事务补偿元素中的事务补偿接口,根据该事务补偿元素中的补偿基础数据,执行当前待补偿事务的补偿操作;若补偿成功,则将下一待补偿事务作为当前补偿事务,继续执行事务补偿元素的获取操作,直至或串策略的待补偿事
务补偿完毕。
73.举例说明,在贷款事务中的额度扣除阶段,成功扣除了本次贷款事务中三笔贷款的授信额度的扣除,但最终贷款事务执行失败,未完成放款操作。由于三笔授信额度扣除满足与策略,因此,可以获取这三笔授信额度扣除操作对应的事务补偿元素(包括扣除额度和被扣除方),以及事务补偿接口(授信额度还原接口),通过调用事务补偿接口,实现对三笔授信额度的增加,从而实现对三笔授信额度扣除操作的回滚。
74.在另一个可选实施例中,若待补偿事务的数量为一个,则无需执行其对应的事务补偿策略,调用相应事务补偿元素中的事务补偿接口,直接根据相应事务补偿元素中的补偿基础数据,对当前补偿事务执行补偿操作即可。
75.可以理解的是,采用上述技术方案,通过待补偿事务执行顺序的相反顺序获取当前补偿事务,并根据事务补偿策略和事务补偿元素执行补偿操作,提高了事务补偿操作的效率,通过调用相应的补偿接口进行补偿操作,提高了事务补偿操作的准确性。
76.在一个具体实施例中,当前补偿事务的补偿操作执行完毕后,若补偿操作执行失败,生成记录日志,记录此次执行失败的事务补偿操作,并重新执行该当前补偿事务的补偿操作,或跳过当前补偿事务,执行后续待补偿事务的补偿操作;当所有待补偿事务的补偿操作执行成功后,清空补偿数据实体。
77.本技术实施例通过确定各执行事务的事务补偿策略,便于后续根据事务补偿策略执行事务补偿操作,能够根据不同情况按照相应事务补偿策略执行事务补偿操作,提高了事务补偿的灵活性。同时,通过执行事务的执行依赖数据确定事务补偿元素,提高了事务补偿元素的准确性,便于后续直接依照事务补偿元素进行相应待补偿事务的事务补偿,进而提高了事务补偿操作的准确性和便捷性。另外,将事务补偿数据顺序存储至数据实体中,以便按照设定顺序进行不同待补偿事务的补偿操作,避免由于补偿顺序有误导致对待处理事务补偿失败的情况发生,提高了事务补偿的准确性。
78.实施例三
79.图3为本技术实施例三提供的一种分布式事务补偿装置的结构图,本技术实施例可适用于对异构应用系统间的分布式事务进行补偿的情况,该装置由软件和/或硬件实现,并具体配置与电子设备中。如图3所示,该分布式事务补偿装置包括:待处理事务获取模块301、待处理事务运行模块302、待补偿事务确定模块303、待补偿事务补偿模块304,其中,
80.待处理事务获取模块301,用于获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后;
81.事务补偿数据确定模块302,用于运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;
82.待补偿事务确定模块303,用于在服务方法执行完毕后,确定服务方法中的待补偿事务;
83.待补偿事务补偿模块304,用于根据事务补偿数据,对待补偿事务执行事务补偿操作。
84.本技术实施例通过待处理事务获取模块,获取待处理事务;其中,待处理事务包括执行外层组件和服务方法,执行外层组件添加在服务方法执行前后;通过事务补偿数据确定模块,运行待处理事务,以在服务方法执行过程中,确定事务补偿数据;通过待补偿事务
确定模块,在服务方法执行完毕后,确定服务方法中的待补偿事务;通过待补偿事务补偿模块,根据事务补偿数据,对待补偿事务执行事务补偿操作。采用该技术方案,通过在服务方法前后添加执行外层组件,确定服务方法中的待补偿事务并执行事务补偿,实现了对异构应用系统间的分布式事务的补偿,提高了分布式事务补偿的兼容性。
85.在一个可选实施例中,事务补偿数据包括事务补偿策略和事务补偿元素;
86.相应的,事务补偿数据确定模块302,包括:
87.事务补偿策略确定单元,用于在服务方法执行过程中,根据服务方法中各执行事务之间的执行顺序,确定各执行事务的事务补偿策略;以及,
88.事务补偿元素确定单元,用于根据各执行事务的执行依赖数据,确定相应执行事务的事务补偿元素;
89.事务补偿数据存储单元,用于将各执行事务的事务补偿数据,顺序存储至补偿数据实体中。
90.在一个可选实施例中,事务补偿元素包括事务补偿接口和补偿基础数据;
91.相应的,事务补偿元素确定单元,包括:
92.补偿接口确定子单元,用于根据执行事务执行时所依赖的功能服务,确定相应执行事务的补偿接口;以及,
93.基础数据确定子单元,用于根据执行事务执行时所依赖的输入数据和中间数据,确定相应执行事务的补偿基础数据。
94.在一个可选实施例中,事务补偿数据存储单元,包括:
95.数据实体创建子单元,用于在执行服务方法之前,创建补偿数据实体;
96.补偿数据存储子单元,根据各执行事务的执行顺序,依次将各执行事务的事务补偿数据划分成元素组存储至补偿数据实体中。
97.在一个可选实施例中,补偿数据存储子单元包括:
98.元素组划分子单元,用于将并行执行的执行事务的事务补偿数据划分成一个元素组,以及将串行执行的各执行事务的事务补偿数据分别划分成一个元素组;
99.元素组存储子单元,用于根据各执行事务的执行顺序,将相应元素组顺序存储至补偿数据实体中。
100.在一个可选实施例中,待补偿事务补偿模块304,包括:
101.当前补偿事务确定单元,用于根据各待补偿事务的执行顺序的相反顺序,依次获取未补偿的待补偿事务作为当前补偿事务;
102.当前补偿事务补偿单元,用于按照当前补偿事务的事务补偿策略,根据相应事务补偿元素,对当前补偿事务执行补偿操作。
103.在一个可选实施例中,当前补偿事务补偿单元,包括:
104.当前补偿事务补偿子单元,用于调用相应事务补偿元素中的事务补偿接口,根据相应事务补偿元素中的补偿基础数据,对当前补偿事务执行补偿操作。
105.上述分布式事务补偿装置可执行本技术任意实施例所提供的分布式事务补偿方法,具备执行各分布式事务补偿方法相应的功能模块和有益效果。
106.实施例四
107.图4是用来实现本技术实施例的一种电子设备的框图。电子设备旨在表示各种形
式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本技术的实现。
108.如图4所示,设备包括计算单元401,其可以根据存储在只读存储器(rom)402中的计算机程序或者从存储单元408加载到随机访问存储器(ram)403中的计算机程序,来执行各种适当的动作和处理。在ram403中,还可存储设备400操作所需的各种程序和数据。计算单元401、rom402以及ram403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。
109.设备400中的多个部件连接至i/o接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
110.计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如分布式事务补偿方法。例如,在一些实施例中,分布式事务补偿方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由rom 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到ram403并由计算单元401执行时,可以执行上文描述的分布式事务补偿方法的一个或多个步骤。备选地,在其他实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行分布式事务补偿方法。
111.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
112.用于实施本技术的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
113.在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可
读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
114.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
115.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
116.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
117.人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
118.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本技术中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本技术提供的技术方案所期望的结果,本文在此不进行限制。
119.上述具体实施方式,并不构成对本技术保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本技术的精神和原则之内所作的修改、等同替换和改进等,均应包含在本技术保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1