logo好方法网

一种工作单元的事务处理方法、装置、设备及介质


技术摘要:
本申请公开了一种工作单元的事务处理方法、装置、设备及介质,包括:根据预设方式构建工作单元对应的工作单元上下文,其中,所述工作单元上下文为所述工作单元运行所需的参数;在确定出存在与业务数据的类型对应的数据库连接,以便通过所述数据库连接将所述工作单元产  全部
背景技术:
对于一些大型软件来说,其复杂的数据结构和数据关联性,使得业务系统具有大 量的业务类型,加之复杂的业务关系,导致后台的一次业务请求可能引发一系列的事务操 作。 在现有技术中,工作单元的事务处理存在不稳定性,当业务请求发生错误时,可能 会给整个系统带来很大的影响。
技术实现要素:
有鉴于此,本申请实施例提供了一种工作单元的事务处理方法、装置、设备及介 质,用于解决现有技术中工作单元的事务处理存在不稳定性的问题。 本申请实施例采用下述技术方案: 本申请实施例提供一种工作单元的事务处理方法,所述方法包括: 开启事务时,根据预设方式构建工作单元对应的工作单元上下文,其中,所述工作 单元上下文包括所述工作单元运行所需的参数; 在确定出存在与业务数据的类型对应的数据库连接,以便通过所述数据库连接, 将所述工作单元根据所述工作单元上下文产生的业务数据,发送至对应的数据库; 采集所述工作单元对应数据库的修改情况,并将所述工作单元对应数据的修改情 况发送至协调器,以便协调器根据所述工作单元对应数据库的修改情况,对工作单元的事 务进行处理。 进一步的,所述根据预设方式构建工作单元对应的工作单元上下文,具体包括: 根据业务数据的类型在应用上下文中确定出所述工作单元对应的数据库的标识, 根据所述工作单元对应的数据库标识与预先写入的标签构建对应的工作单元上下文,其 中,所述工作单元为所述应用的一部分,所述应用上下文包括所述应用运行所需的参数。 进一步的,所述开启事务之前,所述方法还包括: 根据所述业务数据的类型在工作单元中写入对应的切面程序; 根据预设要求在对应的切面程序中写入标签,根据所述标签开启事务,其中,所述 标签对应事务启动的参数。 进一步的,所述事务启动的参数包括是事务类型、事务预设等级以及事务超时时 间中的一种或多种,其中,环境事务类型包括分布式事物与数据库事务。 进一步的,在确定出不存在与所述业务数据的类型对应的数据库连接时,所述方 法还包括: 根据所述工作单元上下文建立所述业务数据的类型对应的数据库连接。 4 CN 111580938 A 说 明 书 2/8 页 进一步的,所述环境事务类型为分布式事物,所述工作单元包括第一工作单元与 第二工作单元时,所述协调器根据所述工作单元对应的工作单元上下文与对应数据库的修 改记录,对工作单元的事务进行处理,具体包括: 所述协调器根据所述工作单元对应的工作单元上下文与对应数据库的修改记录, 判断出所述第一工作单元与所述第二工作单元皆完成对应的事务,向所述第一工作单元与 所述第二工作单元发出操作成功的指令,以便所述第一工工作单元与所述第二工作单元根 据所述操作成功的指令执行事务提交的操作。 进一步的,所述环境事务类型为分布式事物,所述工作单元包括第一工作单元与 第二工作单元时,所述协调器根据所述工作单元对应的工作单元上下文与对应数据库的修 改记录,对工作单元的事务进行处理,具体包括: 所述协调器根据所述工作单元对应的工作单元上下文与对应数据库的修改记录, 判断出所述第一工作单元和/或所述第二工作单元未完成对应事务,向所述第一工作单元 与所述第二工作单元发出操作失败的指令,以便所述第一工工作单元与所述第二工作单元 根据所述操作失败的指令执行事务回滚的操作。 本申请实施例还提供一种工作单元的事务处理装置,所述装置包括: 构建单元,用于开启事务时,根据预设方式构建工作单元对应的工作单元上下文, 其中,所述工作单元上下文包括所述工作单元运行所需的参数; 确定单元,用于在确定出存在与业务数据的类型对应的数据库连接,以便通过所 述数据库连接,将所述工作单元根据所述工作单元上下文产生的业务数据,发送至对应的 数据库; 采集单元,用于采集所述工作单元对应数据库的修改情况,并将所述工作单元对 应数据的修改情况发送至协调器,以便协调器根据所述工作单元对应数据库的修改情况, 对工作单元的事务进行处理。 本申请实施例还提供一种工作单元的事务处理设备,所述设备包括: 至少一个处理器;以及, 与所述至少一个处理器通信连接的存储器;其中, 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一 个处理器执行,以使所述至少一个处理器能够: 开启事务时,根据预设方式构建工作单元对应的工作单元上下文,其中,所述工作 单元上下文包括所述工作单元运行所需的参数; 在确定出存在与业务数据的类型对应的数据库连接,以便通过所述数据库连接, 将所述工作单元根据所述工作单元上下文产生的业务数据,发送至对应的数据库; 采集所述工作单元对应数据库的修改情况,并将所述工作单元对应数据的修改情 况发送至协调器,以便协调器根据所述工作单元对应数据库的修改情况,对工作单元的事 务进行处理。 本申请实施例还提供一种工作单元的事务处理介质,存储有计算机可执行指令, 所述计算机可执行指令设置为: 开启事务时,根据预设方式构建工作单元对应的工作单元上下文,其中,所述工作 单元上下文包括所述工作单元运行所需的参数; 5 CN 111580938 A 说 明 书 3/8 页 在确定出存在与业务数据的类型对应的数据库连接,以便通过所述数据库连接, 将所述工作单元根据所述工作单元上下文产生的业务数据,发送至对应的数据库; 采集所述工作单元对应数据库的修改情况,并将所述工作单元对应数据的修改情 况发送至协调器,以便协调器根据所述工作单元对应数据库的修改情况,对工作单元的事 务进行处理。 本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:本说明苏实 施例通过将采集的工作单元对应数据库的修改情况发送至协调器,以便协调器对业务数据 进行事务处理,进而提高对业务数据进行事务处理的稳定性。 附图说明 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申 请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中: 图1为本说明书实施例一提供的一种工作单元的事务处理方法的流程示意图; 图2为本说明书实施例二提供的一种工作单元的事务处理方法的流程示意图; 图3为本说明书实施例二提供的分布式事务的示意图; 图4为本说明书实施例三提供的工作单元的事务处理装置的结构示意图。
下载此资料需消耗2积分,
分享到:
收藏