分布式事务处理方法、装置及电子设备与流程

文档序号:32329631发布日期:2022-11-25 21:46阅读:77来源:国知局
分布式事务处理方法、装置及电子设备与流程

1.本发明实施例涉及数据处理技术领域,尤其涉及一种分布式事务处理方法、装置及电子设备。


背景技术:

2.分布式事务是指事务的参与者、支持者的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上,或者可以理解为,一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的业务应用。
3.现有技术中,分布式事务的实现过程主要可以包括两个阶段,一个是准备阶段(prepare phase),另一个是提交阶段(commit phase)。对应的,准备阶段为事务管理器给每个参与者发送prepare消息,每个数据库参与者在本地执行事务,并写本地的undo/redo日志,此时事务没有提交。提交阶段为如果事务管理器收到了参与者的执行失败或者超时消息时,直接给每个参与者发送回滚(rollback)消息;否则,发送提交(commit)消息,参与者可以根据事务管理器的指令执行提交或者回滚操作,并释放事务处理过程中使用的锁资源。
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.图1为本发明实施例提供的现有技术中分布式事务处理过程的应用示意图;
35.图2为本发明实施例提供的分布式事务处理方法的流程示意图;
36.图3为本发明实施例提供的分布式事务处理方法的原理示意图;
37.图4为本发明实施例提供的分布式事务处理装置的结构示意图;
38.图5为本发明实施例提供的电子设备的硬件结构示意图。
具体实施方式
39.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
40.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例还能够包括除了图示或描述的那些实例以外的其他顺序实例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
41.随着互联网技术的发展,大多数互联网公司会将系统进行服务拆分,系统服务化变得越来越流行,在这期间就会出现各种服务与服务之间事务提交问题。即可以将一个待处理业务拆分成多个服务,在实现待处理业务的过程中,会涉及到各服务与服务之间进行提交的问题,现有技术中,分布式事务的实现过程主要可以包括两个阶段,一个是准备阶段(prepare phase),另一个是提交阶段(commit phase)。
42.具体的,图1为本发明实施例提供的现有技术中分布式事务处理过程的应用示意图,如图1中a和图1中b所示,为分布式事务提交成功的情况,在准备阶段(prepare phase),事务管理器给每个参与者发送prepare消息,每个数据库参与者在本地执行事务,并写本地
的undo/redo日志,此时事务没有提交。(undo日志是记录修改前的数据,用于数据库回滚,redo日志是记录修改后的数据,用于提交事务后写入数据文件)在提交阶段(commit phase),如果事务管理器收到了参与者的执行失败或者超时消息时,直接给每个参与者发送回滚(rollback)消息;否则,发送提交(commit)消息。参与者根据事务管理器的指令执行提交或者回滚操作,并释放事务处理过程中使用的锁资源。其中,必须在最后阶段释放锁资源。如图1中c和图1中d所示,为分布式事务提交失败的情况,在二阶段提交过程中可能存在的问题:所有参与者在事务提交阶段处于同步阻塞状态,占用系统资源,容易导致性能瓶颈。如果协调者存在单点故障问题,或出现故障,提供者将一直处于锁定状态。在二阶段中,如果出现协调者和参与者都挂了的情况,有可能导致数据不一致,降低了业务的处理效率,进而影响了业务的正常实现。
43.基于上述问题,本技术通过实时对当前可用的线程信息和第一服务请求第二服务时对应的线程信息进行监控,并根据监控结果进行处理的方式,达到了既减少了所有参与者均处于同步阻塞状态的情况,并且在协调者出现故障时,也可以通过备份服务器进行处理,避免了业务一直处于锁定状态的情况,又提高了业务的处理效率的技术效果。
44.下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
45.图2为本发明实施例提供的分布式事务处理方法的流程示意图,本实施例的方法可以由主服务器执行。如图2所示,本实施例的方法,可以包括:
46.s201:在监听到待处理业务中的第一服务请求第二服务时,获取第一服务请求第二服务时对应的线程信息,并将第一服务对应的线程状态设置为挂起状态。
47.在本实施例中,待处理业务在实现过程中,可能会涉及到多个服务,各个服务之间按预设交互顺序有序进行交互,进而可以实现该待处理业务。在该实施例中,以待处理业务包含第一服务和第二服务为例进行说明,当然包含其他服务数量的方式也在本技术的保护范围内,在此不再详细进行论述。
48.进一步的,可以实时对第一服务的状态进行监听,在监听到第一服务请求第二服务时,可以获取第一服务请求第二服务时对应的线程信息,其中,第一服务请求第二服务时对应的线程信息可以包括线程id、线程名称以及请求状态等。示例性的,请求状态可以包括已发起状态、请求中状态和已完成状态。
49.此外,在监听到第一服务请求第二服务时,可以先将第一服务对应的线程的状态设置为挂起状态,即先不对第一服务进行处理,等待第二服务处理完成之后再对第一服务进行处理。
50.s202:从事务存储调度中心中获取当前可用的线程信息,并对第一服务请求第二服务时对应的线程信息和当前可用的线程信息进行监听,得到监听结果,并将监听结果同步至备份服务器。
51.在本实施例中,实务存储调度中心中存储有当前可用的线程信息,在监听到第一服务请求第二服务之后,可以从实务存储调度中心中获取当前可用的线程信息,然后对第一服务请求第二服务时对应的线程信息和当前可用的线程信息进行监听,判断当前可用的线程信息是否分配给第一服务请求第二服务时对应的线程,得到监听结果。
52.此外,在得到监听结果之后,为了避免主服务器发生故障造成数据丢失,可以将监
听结果同步至备份服务器。另外,待处理业务处理过程中的其他数据也可以同步至备份服务器,保证备份服务器与主服务器中的数据一致性。
53.s203:根据监听结果分别对第二服务和第一服务进行处理,进而实现待处理业务。
54.在本实施例中,在得到监听结果之后,可以根据该监听结果依次对第二服务和第一服务进行处理,进而实现该待处理业务。
55.进一步的,根据监听结果依次对第二服务和第一服务进行处理的具体过程可以为:
56.若监听结果为当前可用的线程信息为第二服务接收到所述第一服务的请求时,对所述第二服务进行处理,并在处理完成所述第二服务时,将所述当前可用的线程信息对应的线程状态设置为完成状态。
57.将所述第一服务对应的线程状态设置为请求状态,并根据所述请求状态对所述第一服务进行处理,进而实现所述待处理业务。
58.另外,所述方法还可以包括:
59.若监听结果为当前可用的线程信息被除第一服务和第二服务之外的其他服务占用时,则将所述第二服务的状态设置为挂起状态;
60.每隔预设时长确定所述当前可用的线程信息的状态,并在所述当前可用的线程信息没有被所述其他服务占用时,为所述第二服务分配所述当前可用的线程信息,并对所述第二服务进行处理。
61.具体的,监听结果可以包括两种,一种为当前可用的线程信息被第二服务接收到第一服务的请求所对应的线程占用时,即当前可用的线程信息为第二服务接收到第一服务的请求时,可以对第二服务进行处理,并在第二服务处理完成时,将当前可用的线程信息对应的线程状态设置为完成状态,即表明第二服务已经处理完成,可以根据第二服务处理完成之后的信息对第一服务继续进行处理了。
62.另一种监听结果为当前可用的线程信息被除第一服务和第二服务之外的其他服务占用时,即当前可用的线程信息被其他待处理业务占用时,暂时不能处理第二服务,可以先将第二服务的状态设置为挂起状态。并且每隔预设时长确定一次当前可用的线程信息的状态,并在当前可用的线程信息没有被其他服务占用时,为第二服务分配当前可用的线程信息,并对第二服务进行处理,并在处理完成第二服务时,将当前可用的线程信息对应的线程状态设置为完成状态。
63.采用上述方案后,能在监听到待处理业务中的第一服务请求第二服务时,获取第一服务请求第二服务时对应的线程信息,并将第一服务对应的线程状态设置为挂起状态,然后可以从事务调度中心中获取当前可用的线程信息,并对第一服务请求第二服务时对应的线程信息和当前可用的线程信息进行监听,得到监听结果,并将监听结果同步至备份服务器,再根据监听结果分别对第二服务和第一服务进行处理,进而实现待处理业务,通过实时对当前可用的线程信息和第一服务请求第二服务时对应的线程信息进行监控,并根据监控结果进行处理的方式,减少了所有参与者均处于同步阻塞状态的情况,并且在协调者出现故障时,也可以通过备份服务器进行处理,避免了业务一直处于锁定状态的情况,提高了业务的处理效率。
64.基于图2的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行
说明。
65.此外,在另一实施例中,所述方法还可以包括:
66.若在预设时长内没有实现待处理业务,则启动备份服务器,以使所述备份服务器根据监听结果分别对第二服务和第一服务进行处理,进而实现所述待处理业务。
67.在本实施例中,若在预设时长内仍没有实现待处理业务时,则表明实现该待处理业务的主服务器可能存在故障,为了避免影响待处理业务的正常实现,可以启动备份服务器,由于备份服务器中的数据与主服务器中的数据是实时同步的,因此,可以通过备份服务器对第二服务和第一服务进行处理,进而实现该待处理业务。
68.此外,在另一实施例中,在从事务存储调度中心中获取当前可用的线程信息之前,所述方法还可以包括:
69.根据预存的动态路由负载规则确定当前可用的线程信息,其中,所述当前可用的线程信息为至少一服务对应的线程信息。
70.将所述当前可用的线程信息存储至事务存储调度中心。
71.进一步的,在从事务存储调度中心中获取当前可用的线程信息之后,还可以包括:
72.根据零拷贝规则将第一服务请求第二服务时对应的线程信息以及所述当前可用的线程信息存储至磁盘。
73.在本实施例中,图3为本发明实施例提供的分布式事务处理方法的原理示意图,如图3所示,可以包括事务存储调度(transaction scheduling)、事务服务发现(transaction registry)、事务控制中心服务(transaction control)、事务监听(transaction monitor)以及服务通信(transaction remoting)几个具体模块。
74.具体的,事务存储调度模块为事务控制中心的一个组件,主要是用来缓存、存储服务与服务之间的调度关系,方便于更快定位当前调用链路关系。例如,a服务访问b服务期间,事务控制中心会将当前线程挂起(cpu切换上下文),然后会将当前线程进行持久化,防止数据丢失,等b服务是否confirm确认提交完毕后。在执行a服务事务commit提交。事务存储调度服务存储技术会在启动时在磁盘中默认开辟一个连续的存储空间,这样能够保障挂起的线程持久化时能保证数据的顺序性,然后读取时在利用零拷贝高效读取。事务服务发现可以看作是整个框架的注册中心,主要有两个功能,一是集群的事务控制中心、事务存储调度服务的路由配置。二是:获取两个服务的实时配置信息,其他模块通过访问事务控制中心来获取最新的服务状态以及地址。事务控制中心主要为管控事务存储调度和事务监控的控制器,来处理数据存储,以及事件监听后向各服务扭转消息等处理过程。事务控制中心支持集群模式master或者slave。多个主从组成的集群,同时还提供下游系统是否confirm确认提交查询功能。事务监听模块为事务控制中心的一个组件,主要是来监控服务与服务之间的发起,利用自定义注解的方式,当a服务调用b服务时,服务监控会记录以及跟踪当前线程id状态以及请求状态,然后把数据传递给事务控制中心来处理。具体可以为服务监听监测到a服务调用b服务时会获取当前线程id,线程名称,请求状态等数据发送到事务控制中心,事务控制中心则会将数据缓存起来并持久化。当下游服务confirm确认提交后,监控中心会接受下游系统指令,并向服务控制中心发起请求,告知上游戏事务提交状态。服务通信模块主要可以基于netty底层通信来实现所有服务间的交互。
75.其中,当服务与服务之间进行通讯时,事务监听(transaction monitor)则会将数
据传递到事务控制中心,这个时候事务控制中心则会发起2个步骤,第一步为往内存中写入当前线程id状态以及请求状态,第二步为利用零拷贝技术将数据按照一定排序写入到磁盘中,这主要是防止数据丢失。其他服务在启动时会向事务服务发现发送指令,并传递当前服务信息如服务名称,服务地址等。动态路由机制的运作,主要可以模仿gateway动态路由的配置。通过采用零拷贝技术,可以避免cpu将数据从一块存储拷贝到另外一块存储,主要就是利用各种零拷贝技术,避免让cpu做大量的数据拷贝任务,减少不必要的拷贝,或者让别的组件来做这一类简单的数据传输任务,能够大量节省时间来,来进行磁盘与io之间互动。
76.另外,当a服务请求b服务时,服务监听会获取当前线程id,线程名称,请求状态(已发起)等数据发送到事务控制中心,服务注册发现会根据当前事务存储调度有哪些阶段是存活可用的,然后通过动态路由负载到具体的事务存储调度中心,然后事务存储调度中心会保持并持久化当前数据,同时如果是集群模式也会将数据同步到slave中,当b服务收到请求后,服务监听也会监听到当前请求接口的程id,线程名称,请求状态(请求中)等数据,直到b服务线程处理完成后,监听服务会回写当前线程请求状态已完成,并将a服务线程挂起状态调整成正常状态。
77.本技术通过服务架构特性将当前分布式事务用第三方插件引用的形式来使得服务能够进行双向通信,并且采用线程切换的技术来达到线程阻塞以及向数据库发送指令来达到事务回滚的目的,既能保障服务与服务之间达到双向通信,又可以告知上下游系统事务回归状态以及是否commit事务,理论上只要保障服务之间达到双向通信就能准确保证事务的最终一致性以及时效性,并支持高可用,多节点部署。
78.基于同样的思路,本说明书实施例还提供了上述方法对应的装置,图4为本发明实施例提供的分布式事务处理装置的结构示意图,如图4所示,可以包括:
79.监听模块401,用于在监听到待处理业务中的第一服务请求第二服务时,获取第一服务请求第二服务时对应的线程信息,并将所述第一服务对应的线程状态设置为挂起状态。
80.处理模块402,用于从事务存储调度中心中获取当前可用的线程信息,并对所述第一服务请求第二服务时对应的线程信息和所述当前可用的线程信息进行监听,得到监听结果,并将所述监听结果同步至备份服务器。
81.所述处理模块402,还用于根据所述监听结果分别对所述第二服务和所述第一服务进行处理,进而实现所述待处理业务。
82.在本实施例中,所述处理模块402,还用于:
83.若所述监听结果为所述当前可用的线程信息为所述第二服务接收到所述第一服务的请求时,对所述第二服务进行处理,并在处理完成所述第二服务时,将所述当前可用的线程信息对应的线程状态设置为完成状态。
84.将所述第一服务对应的线程状态设置为请求状态,并根据所述请求状态对所述第一服务进行处理,进而实现所述待处理业务。
85.在本实施例中,所述处理模块402,还用于:
86.若所述监听结果为所述当前可用的线程信息被除所述第一服务和所述第二服务之外的其他服务占用时,则将所述第二服务的状态设置为挂起状态。
87.每隔预设时长确定所述当前可用的线程信息的状态,并在所述当前可用的线程信
息没有被所述其他服务占用时,为所述第二服务分配所述当前可用的线程信息,并对所述第二服务进行处理。
88.此外,在另一实施例中,所述处理模块402,还用于:
89.若在预设时长内没有实现所述待处理业务,则启动所述备份服务器,以使所述备份服务器根据所述监听结果分别对所述第二服务和所述第一服务进行处理,进而实现所述待处理业务。
90.此外,在另一实施例中,所述处理模块402,还用于:
91.根据预存的动态路由负载规则确定当前可用的线程信息,其中,所述当前可用的线程信息为至少一服务对应的线程信息。
92.将所述当前可用的线程信息存储至事务存储调度中心。
93.在本实施例中,所述处理模块402,还用于:
94.根据零拷贝规则将所述第一服务请求第二服务时对应的线程信息以及所述当前可用的线程信息存储至磁盘。
95.本发明实施例提供的装置,可以实现上述如图2所示的实施例的方法,其实现原理和技术效果类似,此处不再赘述。
96.图5为本发明实施例提供的电子设备的硬件结构示意图。如图5所示,本实施例提供的设备500包括:至少一个处理器501和存储器502。其中,处理器501、存储器502通过总线503连接。
97.在具体实现过程中,至少一个处理器501执行所述存储器502存储的计算机执行指令,使得至少一个处理器501执行上述方法实施例中的方法。
98.处理器501的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
99.在上述的图5所示的实施例中,应理解,处理器可以是中央处理单元(英文:central processing unit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digital signal processor,简称:dsp)、专用集成电路(英文:application specific integrated circuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
100.存储器可能包含高速ram存储器,也可能还包括非易失性存储nvm,例如至少一个磁盘存储器。
101.总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
102.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的分布式事务处理方法方法。
103.本发明实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被
处理器执行时,实现如上所述的分布式事务处理方法方法。
104.上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
105.一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(application specific integrated circuits,简称:asic)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
106.本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
107.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1