CN108874947A - 一种数据处理系统及数据处理方法 - Google Patents
一种数据处理系统及数据处理方法 Download PDFInfo
- Publication number
- CN108874947A CN108874947A CN201810568466.XA CN201810568466A CN108874947A CN 108874947 A CN108874947 A CN 108874947A CN 201810568466 A CN201810568466 A CN 201810568466A CN 108874947 A CN108874947 A CN 108874947A
- Authority
- CN
- China
- Prior art keywords
- client
- server
- operation server
- transaction
- target
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000004891 communication Methods 0.000 claims description 26
- 238000000034 method Methods 0.000 claims description 14
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种数据处理系统及数据处理方法,控制服务器接收第一客户端发送的事务开启请求,生成事务号并将事务号发送至第一客户端;第一客户端向第一操作服务器发送携带事务号的第一操作请求;第一操作服务器基于第一操作请求对第一数据库进行第一操作;第二客户端获取事务号,向第二操作服务器发送携带事务号的第二操作请求;第二操作服务器基于第二操作请求对第二数据库进行第二操作;控制服务器在第一操作成功且第二操作成功时,控制第一操作服务器和第二操作服务器提交事务,在第一操作失败或第二操作失败时,控制第一操作服务器和第二操作服务器回滚事务。本申请能够保证具有关联关系的业务对应的数据库中数据的一致性。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理系统及数据处理方法。
背景技术
现有技术中,各业务对应的数据库混在一个大数据库里面,基于此,事务处理的过程为:使用SQLiteDatabase的beginTransaction()方法开启一个事务,程序执行到endTransaction()方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful()方法将事务的标志设置为成功则提交事务,如果没有调用setTransactionSuccessful()方法则回滚事务。
现有技术中,由于各个业务对应的数据库均混在一个大数据库里面,即各个业务中心均访问该大数据库,大数据库中各个业务对应的数据库之间相互连接难以拆分,现有方案通过连接数据表来实现各自业务线的一些业务逻辑,由于各个不同业务之间会相互关联,因此,业务数据难以拆分。随着业务量的增大,数据越来越多,为了应对较大的业务量,需要将各个业务对应的数据库拆分开,即每个业务中心对应一数据库,然而,之后随之会产生一个新的问题:由于一个事务通常涉及多个业务中心,因此,一个事务通常需要跨业务中心完成,此时,就会出现数据不一致现象。
发明内容
有鉴于此,本发明提供了一种数据处理系统及数据处理方法,用以解决将各个业务对应的数据库拆分开后,事务跨业务中心完成时导致相关联的业务对应的数据库中的数据出现不一致的问题,其技术方案如下:
一种数据处理系统,至少包括:控制服务器、与第一业务对应的第一客户端和第一操作服务器、与所述第一业务具有关联关系的第二业务对应的第二客户端和第二操作服务器,所述第一业务对应第一数据库,所述第二业务对应第二数据库;
所述第一客户端,用于向所述控制服务器发送事务开启请求;
所述控制服务器,用于基于所述事务开启请求生成目标事务号,将所述目标事务号发送至所述第一客户端;
所述第一客户端,还用于向所述第一操作服务器发送携带所述目标事务号的第一操作请求;
所述第一操作服务器,用于基于所述第一操作请求对所述第一数据库进行第一操作;
第二客户端,用于获取所述目标事务号,向所述第二操作服务器发送携带所述目标事务号的第二操作请求;
所述第二操作服务器,用于基于所述第二操作请求对所述第二数据库进行第二操作;
所述控制服务器,还用于在所述第一操作成功且所述第二操作成功时,控制所述第一操作服务器和所述第二操作服务器提交事务,在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
其中,所述控制服务器,具体用于当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作成功且所述第二操作成功的事务提交请求时,控制所述第一操作服务器和所述第二操作服务器提交事务;
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作失败或所述第二操作失败的事务回滚请求时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
其中,所述第一客户端,还用于接收所述第一操作的第一操作结果,并将所述第一操作结果发送至第三方系统;
所述第二客户端,还用于接收所述第二操作的第二操作结果,并将所述第二操作结果发送至所述第三方系统,以使所述第三方系统基于所述第一操作结果和所述第二操作结果确定事务处理方式,所述事务处理方式为事务提交或事务回滚中的一种;
所述第一客户端和/或所述第二客户端,还用于接收所述第三方系统发送的事务处理方式信息,并基于所述事务处理方式信息向所述控制服务器发送事务提交请求或事务回滚请求。
其中,所述第二客户端,具体用于从所述第一客户端获取所述目标事务号;
或者,
从第三方系统获取所述目标事务号,所述目标事务号由所述第一客户端或所述控制服务器发送至所述第三方系统。
其中,所述控制服务器,还用于在系统启动时,获取所述第一操作服务器和所述第二操作服务器的标识信息,得到操作服务器标识列表,将所述操作服务器标识列表发送至所述第一客户端和所述第二客户端;
所述第一客户端,还用于基于所述操作服务器标识列表与所述第一操作服务器建立通信连接;
所述第二客户端,还用于基于所述操作服务器标识列表与所述第二操作服务器建立通信连接。
其中,所述第一操作服务器为多个,所述第二操作服务器为多个;
所述第二客户端,具体用于基于预设的第一路由算法从多个第一操作服务器中确定目标第一操作服务器,从所述操作服务器标识列表中确定与所述目标第一操作服务器对应的标识信息作为目标第一标识信息,通过所述目标第一标识信息与所述目标第一操作服务器建立通信连接;
所述第二客户端,具体用于基于预设的第二路由算法从多个第二操作服务器中确定目标第二操作服务器,从所述操作服务器标识列表中确定与所述目标第二操作服务器对应的目标第二标识信息,通过所述目标第二标识信息与所述目标第二操作服务器建立通信连接。
其中,所述控制服务器,还用于监控各个操作服务器的状态,当有操作服务器发生故障时,向各个客户端发送操作服务器发生故障的通知消息,所述通知消息中携带发生故障的操作服务器的标识信息。
一种数据处理方法,应用于上述的数据处理系统中的控制服务器,所述方法包括:
接收第一客户端发送的事务开启请求;
基于所述事务开启请求生成目标事务号,并将所述目标事务号发送至所述第一客户端,以使所述第一客户端向所述第一操作服务器发送携带所述目标事务号的第一操作请求,进而使所述第一操作服务器基于所述第一操作请求对第一数据库进行第一操作;
在所述第一操作成功且第二操作成功时,控制所述第一操作服务器和第二操作服务器提交事务;
在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和第二操作服务器回滚事务;
其中,所述第二操作为第二客户端在获得所述目标事务号,且向第二操作服务器发送携带所述目标事务号的第二操作请求后,第二操作服务器基于所述第二操作请求对第二数据库进行的操作。
其中,所述在所述第一操作成功且第二操作成功时,控制所述第一操作服务器和第二操作服务器提交事务,包括:
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作成功且所述第二操作成功的事务提交请求时,控制所述第一操作服务器和所述第二操作服务器提交事务;
在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和第二操作服务器回滚事务,包括:
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作失败或所述第二操作失败的事务回滚请求时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
所述数据处理方法,还包括:
在所述数据处理系统启动时,获取所述第一操作服务器和所述第二操作服务器的标识信息,得到操作服务器标识列表;
将所述操作服务器标识列表发送至所述第一客户端和所述第二客户端,以使所述第一客户端基于所述操作服务器标识列表与所述第一操作服务器建立通信连接,并使所述第二客户端基于所述操作服务器标识列表与所述第二操作服务器建立通信连接上述技术方案具有如下有益效果:
经由上述的技术方案可知,与现有技术相比,本实施例提供的数据处理系统中,第一数据库和第二数据库是独立的,本发明实施例提供的数据处理系统中的控制服务器通过事务号将相互独立的第一数据库和第二数据库关联起来,从而能够统一对第一数据库和第二数据库进行控制和管理,例如,控制服务器第一数据库和第二数据库均进行事务提交或均进行事务回滚,进而能够保证数据库中数据的一致性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的数据处理系统的结构示意图;
图2为本发明实施例提供的数据处理方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据处理系统,请参阅图1,示出了该数据处理系统的结构示意图,该数据处理系统可以包括:控制服务器100、与第一业务对应的第一客户端101和第一操作服务器102、与第一业务具有关联关系的第二业务对应的第二客户端103和第二操作服务器104,其中,第一业务对应第一数据库,第二业务对应第二数据库。需要说明的是,本实施例中的第一和第二是泛指,第一业务是一种业务,第二业务是与第一业务关联的业务,其可以为一种业务,也可以为多种业务,例如,第一业务为A业务,与A业务关联的业务包括C业务和D业务,则C业务和D业务则为本发明实施例中的第二业务,相应地,C业务对应的客户端、D业务对应的客户端为本发明实施例中的第二客户端,C业务对应的操作服务器、D业务对应的操作服务器为本发明实施例中的第二操作服务器,C业务对应的数据库、D业务对应的数据库为本发明实施例中的第二数据库。
第一客户端101,用于向控制服务器100发送事务开启请求。
控制服务器100,用于基于事务开启请求生成目标事务号,将目标事务号发送至第一客户端101。
第一客户端101,还用于向第一操作服务器102发送携带目标事务号的第一操作请求。
第一操作服务器102,用于基于第一操作请求对第一数据库进行第一操作。
第二客户端103,用于获取目标事务号,向第二操作服务器104发送携带目标事务号的第二操作请求。
在本实施例中,由于第一客户端101已经开启事务,第二客户端103只需要获得目标事务号,加入目标事务号对应的目标事务即可。第二客户端在加入目标事务之后,可向操作服务器100发送加入目标事务的通知消息,如此,操作服务器便可得知目标事务涉及哪些客户端。
在本实施例中,第二客户端103获取目标事务号的方式有多种,在一种可能的实现方式中,第一客户端101在获得目标事务号后,可将该目标事务号传递给第二客户端,即第二客户端103从第一客户端101获得目标事务号;在另一种可能的实现方式中,第一客户端101在获得该目标事务号后,可将目标事务号发送至第三方系统,或者,控制服务器100在生成目标事务号后,除了将目标事务号发送至第一客户端101外,还将目标事务号发送至第三方系统,第三方系统将目标事务号发送至第二客户端103,即第二客户端103从第三方系统获得目标事务号。
第二操作服务器104,用于基于第二操作请求对第二数据库进行第二操作。
控制服务器100,还用于在第一操作成功且第二操作成功时,控制第一操作服务器和第二操作服务器提交事务,在第一操作失败或第二操作失败时,控制第一操作服务器和第二操作服务器回滚事务。
在一种可能的实现方式中,控制服务器100可在接收到第一客户端和/或第二客户端发送的、指示第一操作成功且第二操作成功的事务提交请求时,控制第一操作服务器102和第二操作服务器104提交事务;在接收到第一客户端和/或第二客户端发送的、指示第一操作失败或第二操作失败的事务回滚请求时,控制第一操作服务器102和第二操作服务器104回滚事务。
具体地,第一客户端和/或第二客户端向控制服务器100发送事务提交请求或事务回滚请求的过程为:第一客户端101接收第一操作服务器102发送的、第一操作的第一操作结果,并将第一操作结果发送至第三方系统,同样地,第二客户端103接收第二操作服务器104发送的、第二操作的第二操作结果,并将第二操作结果发送至第三方系统,第三方系统基于第一操作结果和第二操作结果确定事务处理方式,事务处理方式为提交事务和回滚事务中的一种,接着,第三方系统将指示事务处理方式的事务处理方式信息发送至第一客户端和/或第二客户端,第一客户端和/或第二客户端在接收到事务处理方式信息时,向控制服务器100发送事务提交请求或事务回滚请求,具体地,若事务处理方式信息指示事务处理方式为提交事务,则向控制服务器100发送事务提交请求,若事务处理方式信息指示事务处理方式为回滚事务,则向控制服务器100发送事务回滚请求。其中,第一客户端102和/或第二客户端104向控制服务器100发送的事务提交请求或事务回滚请求中携带有目标事务号,如此,控制服务器100便可获知该控制哪个操作服务器对哪个事务进行提交或回滚。
在上述实现方式中,需要提交事务还是回滚事务,是由第三方系统基于第一操作结果和第二操作结果确定的,即,若第一操作结果指示第一操作成功,且第二操作结果指示第二操作成功,则确定需要提交事务,若第一操作结果指示第一操作失败或第二操作结果指示第二操作失败,则确定需要回滚事务。对于操作服务器100而言,其只需要在获得第一客户端101和/或第二客户端103发送的事务提交请求或事务回滚请求时,控制与第一业务对应的第一操作服务器102和与第一业务具有关联关系的第二业务对应的第二操作服务器104均进行事务提交或事务回滚,从而保持数据的一致性。
在另一种可能的实现方式中,第一客户端101在获得第一操作结果后,可将第一操作结果发送给控制服务器100,同样地,第二客户端103在获得第二操作结果后,可将第二操作结果发送至控制服务器100,控制服务器100在获得第一操作结果和第二操作结果之后,若第一操作结果指示第一操作成功,且第二操作结果指示第二操作成功,则控制第一操作服务器102和第二操作服务器104均提交事务,若第一操作结果指示第一操作失败,或者第二操作结果指示第二操作失败,则控制第一操作服务器102和第二操作服务器104均回滚事务。需要说明的是,第一操作结果和第二操作结果中携带有目标事务号,如此,控制服务器100便可获知该控制哪个操作服务器对哪个事务进行提交或回滚。
另外,需要说明的是,客户端若想向操作服务器发送数据操作请求,则需要预见与操作服务器建立通信连接。在本实施例中,在系统启动时,第一操作服务器102和第二操作服务其104可将自身的标识信息发送至控制服务器100,控制服务器100接收各个操作服务器发送的标识信息,获得操作服务器标识列表,其中,标识信息可以为操作服务器的IP地址、端口号等。控制服务器100在获得操作服务器标识列表后,将其发送给各个客户端端,如此,第一客户端101和第二客户端102均获得了操作服务器标识列表,接着,第一客户端101便可基于操作服务器标识列表与第一操作服务器102建立通信连接,第二客户端103便可基于操作服务器标识列表与第一操作服务器104建立通信连接。
需要说明的是,本实施例中的第一操作服务器可以为多个,第二操作服务器也可以为多个,则第一客户端101便可基于操作服务器标识列表与第一操作服务器102建立通信连接的过程可以包括:基于预设的第一路由算法从多个第一操作服务器中确定目标第一操作服务器,从操作服务器标识列表中确定与目标第一操作服务器对应的标识信息作为目标第一标识信息,通过目标第一标识信息与目标第一操作服务器建立通信连接;同样地,第二客户端103基于操作服务器标识列表与第一操作服务器104建立通信连接的过程包括:基于预设的第二路由算法从多个第二操作服务器中确定目标第二操作服务器,从操作服务器标识列表中确定与目标第二操作服务器对应的目标第二标识信息,通过目标第二标识信息与目标第二操作服务器建立通信连接。
在一种优选地实现方式中,控制服务器100在获得操作服务器列表之后,载客基于操作服务器列表监控各个操作服务器的状态,当有操作服务器发生故障时,向各个客户端发送操作服务器发生故障的通知消息,其中,通知消息中可携带发生故障的操作服务器的标识信息,如此,可以避免客户端向故障的操作服务器发起通信连接,或者,对于之前与该操作服务器建立通信连接的客户端能够及时更换连接的操作服务器。
与现有的数据处理系统相比,本实施例提供的数据处理系统中,第一数据库和第二数据库是独立的,本发明实施例提供的数据处理系统中的控制服务器通过事务号将相互独立的第一数据库和第二数据库关联起来,从而能够统一对第一数据库和第二数据库进行控制和管理,例如,控制服务器第一数据库和第二数据库均进行事务提交或均进行事务回滚,进而能够保证数据库中数据的一致性。
本发明实施例还提供了一种数据处理方法,该数据处理方法应用于数据处理系统中的控制服务器,请参阅图2,示出了该数据处理方法的流程示意图,该数据处理方法可以包括:
步骤S201:接收第一客户端发送的事务开启请求。
步骤S202:基于事务开启请求生成目标事务号,并将目标事务号发送至第一客户端,以使第一客户端向第一操作服务器发送携带目标事务号的第一操作请求,进而使第一操作服务器基于第一操作请求对第一数据库进行第一操作。
步骤S203a:在第一操作成功且第二操作成功时,控制第一操作服务器和第二操作服务器提交事务。
其中,第二操作为第二客户端在获得目标事务号,且向第二操作服务器发送携带目标事务号的第二操作请求后,第二操作服务器基于第二操作请求对第二数据库进行的操作。
在一种可能的实现方式中,在第一操作成功且第二操作成功时,控制第一操作服务器和第二操作服务器提交事务的过程可以包括:当接收到第一客户端和/或第二客户端发送的、指示第一操作成功且第二操作成功的事务提交请求时,控制第一操作服务器和第二操作服务器提交事务。
步骤S203b:在第一操作失败或第二操作失败时,控制第一操作服务器和第二操作服务器回滚事务。
在一种可能的实现方式中,在第一操作失败或第二操作失败时,控制第一操作服务器和第二操作服务器回滚事务的过程可以包括:当接收到第一客户端和/或第二客户端发送的、指示第一操作失败或第二操作失败的事务回滚请求时,控制第一操作服务器和第二操作服务器回滚事务。
另外,本发明实施提供的方法还可以包括:在系统启动时,获取第一操作服务器和第二操作服务器的标识信息,得到操作服务器标识列表;将操作服务器标识列表发送至第一客户端和第二客户端,以使第一客户端基于操作服务器标识列表与第一操作服务器建立通信连接,并使第二客户端基于所述操作服务器标识列表与第二操作服务器建立通信连接。
本发明实施例提供的数据处理方法中,控制服务器可生成事务号,并使相互独立的第一数据库和第二数据库能够通过事务号关联起来,从而能够统一对第一数据库和第二数据库进行控制和管理,例如,控制服务器第一数据库和第二数据库均进行事务提交或均进行事务回滚,进而能够保证数据库中数据的一致性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置和设备,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数据处理系统,其特征在于,至少包括:控制服务器、与第一业务对应的第一客户端和第一操作服务器、与所述第一业务具有关联关系的第二业务对应的第二客户端和第二操作服务器,所述第一业务对应第一数据库,所述第二业务对应第二数据库;
所述第一客户端,用于向所述控制服务器发送事务开启请求;
所述控制服务器,用于基于所述事务开启请求生成目标事务号,将所述目标事务号发送至所述第一客户端;
所述第一客户端,还用于向所述第一操作服务器发送携带所述目标事务号的第一操作请求;
所述第一操作服务器,用于基于所述第一操作请求对所述第一数据库进行第一操作;
第二客户端,用于获取所述目标事务号,向所述第二操作服务器发送携带所述目标事务号的第二操作请求;
所述第二操作服务器,用于基于所述第二操作请求对所述第二数据库进行第二操作;
所述控制服务器,还用于在所述第一操作成功且所述第二操作成功时,控制所述第一操作服务器和所述第二操作服务器提交事务,在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
2.根据权利要求1所述的数据处理系统,其特征在于,所述控制服务器,具体用于当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作成功且所述第二操作成功的事务提交请求时,控制所述第一操作服务器和所述第二操作服务器提交事务;
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作失败或所述第二操作失败的事务回滚请求时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
3.根据权利要求2所述的数据处理系统,其特征在于,所述第一客户端,还用于接收所述第一操作的第一操作结果,并将所述第一操作结果发送至第三方系统;
所述第二客户端,还用于接收所述第二操作的第二操作结果,并将所述第二操作结果发送至所述第三方系统,以使所述第三方系统基于所述第一操作结果和所述第二操作结果确定事务处理方式,所述事务处理方式为事务提交或事务回滚中的一种;
所述第一客户端和/或所述第二客户端,还用于接收所述第三方系统发送的事务处理方式信息,并基于所述事务处理方式信息向所述控制服务器发送事务提交请求或事务回滚请求。
4.根据权利要求1所述的数据处理系统,其特征在于,所述第二客户端,具体用于从所述第一客户端获取所述目标事务号;
或者,
从第三方系统获取所述目标事务号,所述目标事务号由所述第一客户端或所述控制服务器发送至所述第三方系统。
5.根据权利要求1所述的数据处理系统,其特征在于,所述控制服务器,还用于在系统启动时,获取所述第一操作服务器和所述第二操作服务器的标识信息,得到操作服务器标识列表,将所述操作服务器标识列表发送至所述第一客户端和所述第二客户端;
所述第一客户端,还用于基于所述操作服务器标识列表与所述第一操作服务器建立通信连接;
所述第二客户端,还用于基于所述操作服务器标识列表与所述第二操作服务器建立通信连接。
6.根据权利要求5所述的数据处理系统,其特征在于,所述第一操作服务器为多个,所述第二操作服务器为多个;
所述第二客户端,具体用于基于预设的第一路由算法从多个第一操作服务器中确定目标第一操作服务器,从所述操作服务器标识列表中确定与所述目标第一操作服务器对应的标识信息作为目标第一标识信息,通过所述目标第一标识信息与所述目标第一操作服务器建立通信连接;
所述第二客户端,具体用于基于预设的第二路由算法从多个第二操作服务器中确定目标第二操作服务器,从所述操作服务器标识列表中确定与所述目标第二操作服务器对应的目标第二标识信息,通过所述目标第二标识信息与所述目标第二操作服务器建立通信连接。
7.根据权利要求6所述的数据处理系统,其特征在于,所述控制服务器,还用于监控各个操作服务器的状态,当有操作服务器发生故障时,向各个客户端发送操作服务器发生故障的通知消息,所述通知消息中携带发生故障的操作服务器的标识信息。
8.一种数据处理方法,其特征在于,应用于如权利要求1-7中任意一项所述的数据处理系统中的控制服务器,所述方法包括:
接收第一客户端发送的事务开启请求;
基于所述事务开启请求生成目标事务号,并将所述目标事务号发送至所述第一客户端,以使所述第一客户端向所述第一操作服务器发送携带所述目标事务号的第一操作请求,进而使所述第一操作服务器基于所述第一操作请求对第一数据库进行第一操作;
在所述第一操作成功且第二操作成功时,控制所述第一操作服务器和第二操作服务器提交事务;
在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和第二操作服务器回滚事务;
其中,所述第二操作为第二客户端在获得所述目标事务号,且向第二操作服务器发送携带所述目标事务号的第二操作请求后,第二操作服务器基于所述第二操作请求对第二数据库进行的操作。
9.根据权利要求8所述数据处理方法,其特征在于,所述在所述第一操作成功且第二操作成功时,控制所述第一操作服务器和第二操作服务器提交事务,包括:
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作成功且所述第二操作成功的事务提交请求时,控制所述第一操作服务器和所述第二操作服务器提交事务;
在所述第一操作失败或所述第二操作失败时,控制所述第一操作服务器和第二操作服务器回滚事务,包括:
当接收到所述第一客户端和/或所述第二客户端发送的、指示所述第一操作失败或所述第二操作失败的事务回滚请求时,控制所述第一操作服务器和所述第二操作服务器回滚事务。
10.根据权利要求8所述的数据处理方法,其特征在于,还包括:
在所述数据处理系统启动时,获取所述第一操作服务器和所述第二操作服务器的标识信息,得到操作服务器标识列表;
将所述操作服务器标识列表发送至所述第一客户端和所述第二客户端,以使所述第一客户端基于所述操作服务器标识列表与所述第一操作服务器建立通信连接,并使所述第二客户端基于所述操作服务器标识列表与所述第二操作服务器建立通信连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810568466.XA CN108874947B (zh) | 2018-06-05 | 2018-06-05 | 一种数据处理系统及数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810568466.XA CN108874947B (zh) | 2018-06-05 | 2018-06-05 | 一种数据处理系统及数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108874947A true CN108874947A (zh) | 2018-11-23 |
CN108874947B CN108874947B (zh) | 2020-12-01 |
Family
ID=64335173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810568466.XA Active CN108874947B (zh) | 2018-06-05 | 2018-06-05 | 一种数据处理系统及数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108874947B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109948994A (zh) * | 2018-12-14 | 2019-06-28 | 深圳壹账通智能科技有限公司 | 一种即时通信方法、装置、计算机系统及可读存储介质 |
CN111400266A (zh) * | 2019-01-02 | 2020-07-10 | 阿里巴巴集团控股有限公司 | 数据处理方法和系统、操作事件的诊断处理方法和装置 |
CN112650562A (zh) * | 2020-12-18 | 2021-04-13 | 平安科技(深圳)有限公司 | 数据处理方法、装置、设备及可读存储介质 |
CN114255004A (zh) * | 2021-12-20 | 2022-03-29 | 平安证券股份有限公司 | 事务处理方法、装置、设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5553280A (en) * | 1994-08-17 | 1996-09-03 | The United States Of America As Represented By The Secretary Of The Navy | Method for providing critical time reactive management of database transactions for systems process |
CN104572077A (zh) * | 2014-12-12 | 2015-04-29 | 百度在线网络技术(北京)有限公司 | 数据库事务的处理方法及业务系统 |
CN104750746A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团上海有限公司 | 业务数据的处理方法、装置及分布式内存数据库系统 |
CN107436799A (zh) * | 2016-05-26 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 分布式事务一致性实现方法及装置 |
-
2018
- 2018-06-05 CN CN201810568466.XA patent/CN108874947B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5553280A (en) * | 1994-08-17 | 1996-09-03 | The United States Of America As Represented By The Secretary Of The Navy | Method for providing critical time reactive management of database transactions for systems process |
CN104750746A (zh) * | 2013-12-30 | 2015-07-01 | 中国移动通信集团上海有限公司 | 业务数据的处理方法、装置及分布式内存数据库系统 |
CN104572077A (zh) * | 2014-12-12 | 2015-04-29 | 百度在线网络技术(北京)有限公司 | 数据库事务的处理方法及业务系统 |
CN107436799A (zh) * | 2016-05-26 | 2017-12-05 | 阿里巴巴集团控股有限公司 | 分布式事务一致性实现方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109948994A (zh) * | 2018-12-14 | 2019-06-28 | 深圳壹账通智能科技有限公司 | 一种即时通信方法、装置、计算机系统及可读存储介质 |
CN111400266A (zh) * | 2019-01-02 | 2020-07-10 | 阿里巴巴集团控股有限公司 | 数据处理方法和系统、操作事件的诊断处理方法和装置 |
CN111400266B (zh) * | 2019-01-02 | 2023-05-02 | 阿里巴巴集团控股有限公司 | 数据处理方法和系统、操作事件的诊断处理方法和装置 |
CN112650562A (zh) * | 2020-12-18 | 2021-04-13 | 平安科技(深圳)有限公司 | 数据处理方法、装置、设备及可读存储介质 |
CN112650562B (zh) * | 2020-12-18 | 2024-03-08 | 平安科技(深圳)有限公司 | 数据处理方法、装置、设备及可读存储介质 |
CN114255004A (zh) * | 2021-12-20 | 2022-03-29 | 平安证券股份有限公司 | 事务处理方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108874947B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874947B (zh) | 一种数据处理系统及数据处理方法 | |
US10063599B2 (en) | Controlling registration floods in VOIP networks via DNS | |
US11036598B2 (en) | Notification mechanism for disaster recovery events | |
CN108681777B (zh) | 一种基于分布式系统的机器学习程序运行的方法和装置 | |
US20210019765A1 (en) | Blockchain-based business processing method and system | |
CN111459749B (zh) | 基于Prometheus的私有云监控方法、装置、计算机设备及存储介质 | |
US10313452B2 (en) | Migrating a chat message service provided by a chat server to a new chat server | |
CN111045794B (zh) | 分布式事务处理方法、装置、系统、计算机设备及存储介质 | |
EP3489825A1 (en) | Method, apparatus and computer readable storage medium for processing service | |
US20140068040A1 (en) | System for Enabling Server Maintenance Using Snapshots | |
WO2020238891A1 (zh) | 物理主机的租赁方法、装置、云平台及可读存储介质 | |
WO2020253634A1 (zh) | 一种数据处理方法、系统及装置 | |
WO2022048357A1 (zh) | 交易背书方法、装置及存储介质 | |
CN110943860A (zh) | 一种bmc固件更新方法、系统、电子设备及存储介质 | |
CN113206877A (zh) | 一种会话保持方法及装置 | |
US20200322165A1 (en) | Distributed ledger device, distributed ledger system, and distributed ledger management method | |
EP4195033A1 (en) | Method and apparatus for upgrading blockchain system, and terminal device | |
CN108200151B (zh) | 一种分布式存储系统中ISCSI Target负载均衡方法和装置 | |
CN111190707B (zh) | 一种数据处理方法及装置 | |
WO2021012562A1 (zh) | 区块链数据清理方法、装置、计算机设备和存储介质 | |
CN111143041A (zh) | 一种数据一致性方法、分布式协调器及中央协调器 | |
CN105447121A (zh) | 一种数据库集群重建连接高可用的方法 | |
CN114979234A (zh) | 分布式集群系统中会话控制共享方法及系统 | |
US11500857B2 (en) | Asynchronous remote calls with undo data structures | |
CN107704557B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |