用于避免事务回滚的方法和装置制造方法及图纸

技术编号:12384325 阅读:74 留言:0更新日期:2015-11-25 15:39
公开一种用于避免事务回滚的方法和装置,该方法包含:在当前执行的事务所在的业务流程中的预定检查点,确定该检查点的后继流程中包含的至少一个服务;查询所述后继流程中包含的至少一个服务中的至少一个不可用的服务;根据所述至少一个不可用的服务,判断该事务是否能被履行;响应于该事务不能被履行的判定,使该事务的执行停止。

【技术实现步骤摘要】

本专利技术涉及计算机网络应用,尤其涉及运用计算机网络进行执行的业务流程。
技术介绍
计算机网络应用中越来越复杂的业务流程,往往包含多个独立的服务。业务流程 的一个执行实例,也即一个事务处理过程中需要调用多个这样的独立服务。这些服务可能 是企业的内部系统提供的服务,也可能是企业的外部系统提供的服务。当一个事务处理所 调用的某个服务不可用时,将导致该事务处理前面已经成功调用的服务需要被回滚。服务 的回滚是需要付出很大代价的,外部系统所提供的服务回滚的代价更高;某些外部系统提 供的服务甚至是不支持回滚的,需要人工干预。例如某些支付网关,对已经"支付"的服务, 只能再次发起另一个"退款"的补偿服务,这样就会导致商家产生两次支付交易的费用。某 些系统只能通过人工的手段来让外部系统的数据恢复到一致性的状态,这就增加了人工的 成本。
技术实现思路
本专利技术的一个目的是提供一种避免事务回滚的方法和装置。 -方面,提供一种用于避免事务回滚的方法,包含: 在当前执行的事务所在的业务流程中的预定检查点,确定该检查点的后继流程中 包含的至少一个服务; 查询所述后继流程中包含的至少一个服务中的至少一个不可用的服务; 根据所述至少一个不可用的服务,判断该事务是否能被履行; 和 响应于该事务不能被履行的判定,使该事务的执行停止。 另一方面,提供一种用于避免事务回滚的装置,包含: 服务确定单元,被配置用于在当前执行的事务所在的业务流程中的预定检查点, 确定该检查点的后继流程中包含的至少一个服务; 服务状态查询单元,被配置用于查询服务确定单元确定的后继流程中包含的服务 中的至少一个不可用的服务; 事务可执行性判定单元,被配置用于根据服务状态查询单元查询的所述至少一个 不可用的服务,判断该事务是否能被履行;和 事务执行控制单元,被配置用于响应于事务可执行性判定单元对该事务不能被履 行的判定,使该事务的执行停止。【附图说明】 通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其 它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号 通常代表相同部件。 图1示出了适于用来实现本专利技术实施方式的示例性计算机系统/服务器12的框 图; 图2A例示一个购物网站的业务流程; 图2B-2G示意性地表示执行图2A所示的业务流程的过程中用户浏览器上显示的 截图; 图3更详细地表示图2A所示的业务流程的一部分; 图4示意性表示按照专利技术实施例的避免事务回滚的方法的流程图; 图5示意性表示按照专利技术实施例的避免事务回滚的装置的简略框图。【具体实施方式】 下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开 的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方 式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的 范围完整地传达给本领域的技术人员。 图1示出了适于用来实现本专利技术实施方式的示例性计算机系统/服务器12的框 图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本专利技术实施例的功能和使 用范围带来任何限制。 如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统 /服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器 28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。 总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器, 外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举 例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC) 总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。 计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是 任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动 的和不可移动的介质。 系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存 取存储器(RAM) 30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其 它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34 可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为"硬盘驱动器")。尽管 图1中未示出,可以提供用于对可移动非易失性磁盘(例如"软盘")读写的磁盘驱动器, 以及对可移动非易失性光盘(例如⑶-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。 在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28 可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模 块被配置以执行本专利技术各实施例的功能。 具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器 28中,这样的程序模块42包括--但不限于--操作系统、一个或者多个应用程序、其它 程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程 序模块42通常执行本专利技术所描述的实施例中的功能和/或方法。 计算机系统/服务器12也可以与一个或多个外部设备14 (例如键盘、指向设备、 显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的 设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信 的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接 口 22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络 (例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适 配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示 出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代 码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存 储系统等。 图1显示的计算机系统/服务器12,适于用来实现本专利技术各种实施方式。 首先参看图2A-2G,说明本专利技术各实施例涉及的业务流程的相关概念。图2A示意 性表示一个购物网站的"网络购物"业务流程的业务流程图200。图2B-2G示意性表示用户 在图2A所示的网站购物的过程中网站响应用户的操作在用户的浏览器上显示的页面的截 图。 参看图2A,图中的左侧代表用户,右侧代表购物网站。用户与网站之间的箭头表示 用户与网站的交互,其中,从用户指向网站的箭头代表用户的操作,从网站指向用户的箭头 代表网站的操作。 图2A所示的"网络购物"过程如下。 SI.用户例如通过输入电商网站的网址,进入电商网站。 S2.显示商品详情,如图2B所示。用户可以点击该页面上的按钮221,把商品加入 购物车。 S3.用户把商品加入购物车。网站得到有关用户选择的商品的参数,例如商品编 号、数量。 S4.显示商品被成功地加入购物车,如图2C所示。用户可以点击该页面上的按钮 231,表本文档来自技高网...

【技术保护点】
一种用于避免事务回滚的方法,包含:在当前执行的事务所在的业务流程中的预定检查点,确定该检查点的后继流程中包含的至少一个服务;查询所述后继流程中包含的至少一个服务中的至少一个不可用的服务;根据所述至少一个不可用的服务,判断该事务是否能被履行;响应于该事务不能被履行的判定,使该事务的执行停止。

【技术特征摘要】

【专利技术属性】
技术研发人员:韩久正宋宜旭李奇凝于爽
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1