具有全局变量改变的服务的回滚制造技术

技术编号:37141323 阅读:36 留言:0更新日期:2023-04-06 21:46
本公开的实施例涉及具有全局变量改变的服务的回滚。实施例技术检测到业务中的多个服务中的至少两个服务被执行来改变第一全局变量的值。获取用于指示在该多个服务的执行期间该至少两个服务改变第一全局变量的值的第一顺序的跟踪信息。响应于业务的失败,至少基于跟踪信息来确定多个补偿服务的回滚执行计划,其中多个补偿服务被配置为分别补偿多个补偿服务。随后该多个补偿服务根据回滚执行计划来执行。执行。执行。

【技术实现步骤摘要】
具有全局变量改变的服务的回滚


[0001]本专利技术一般涉及分布式计算数据一致性技术,更具体地,涉及多服务设置中的全局变量的数据回滚。

技术介绍

[0002]越来越常见的是,服务实施涉及对分布式系统中的其他服务的多个串行和/或并行调用。业务可以被设计成包括多个服务,在该多个服务中,串行和/或并行调用是可能的。这些服务调用可能成功,可能由于某些错误而失败,或者由于超时而进入未知状态,在这种情况下,业务可能会成功或失败。在分布式系统中,跨多个服务的业务需要一种机制来确保跨服务的数据一致性,尤其是在业务失败时。通常,用于管理故障的回滚机制向业务的每个服务提供用于回滚的补偿服务,以确保跨业务的服务的一致性和正确性。

技术实现思路

[0003]根据本公开的一个实施例,提供了一种计算机实现的方法。根据该方法,检测到业务中的多个服务中的至少两个服务被执行来改变第一全局变量的值。获取用于指示在执行该多个服务期间给至少两个服务改变第一全局变量的值的第一顺序的跟踪信息。响应于业务的失败,基于跟踪信息确定多个补偿服务的回滚执行计划,其中该多个补偿服务被配置为分别补偿多个服务。使该多个补偿服务根据回滚执行计划来执行。
[0004]根据本公开的又一实施例,提供了一种系统。该系统包括处理单元,以及耦合到处理单元并在其上存储指令的存储器。当该指令由处理单元执行时,执行根据本公开实施例的上述任一方法的动作。
[0005]根据本公开的再一实施例,提供了计算机程序产品,其被有形地存储在非暂时性机器可读介质上,并且包括机器可执行指令。该指令在设备上执行时,使得该设备执行根据本公开实施例的上述任一方法。
附图说明
[0006]通过对附图中的本公开的一些实施例的更详细描述,本公开的上述和其他目的,特征和优点将变得更加明显,其中相同的参考标号指本公开的实施例中的相同组件。
[0007]图1描绘了根据本公开的一些实施例的云计算节点。
[0008]图2描绘了根据本公开的一些实施例的云计算环境。
[0009]图3描绘了根据本公开的一些实施例的抽象模型层。
[0010]图4A和图4B描述了具有相同全局变量的业务的执行和回滚的一些示例。
[0011]图5描绘了根据本公开的一些实施例的计算架构的框图。
[0012]图6A描绘了根据本公开的一些实施例的服务的示例划分。
[0013]图6B描绘了根据本公开的一些实施例的服务段与补偿服务段之间的示例相关性。
[0014]图7描绘了根据本公开的一些实施例针对服务生成的补偿服务。
[0015]图8描绘了根据本公开的一些实施例的服务段与补偿服务段之间的示例相关性。
[0016]图9描绘了根据本公开的一些实施例的业务的服务的示例执行。
[0017]图10描绘了根据本公开的一些实施例的跟踪信息的示例。
[0018]图11描绘了根据本公开的一些实施例的回滚执行计划的示例。
[0019]图12描绘了根据本公开的一些实施例的针对业务的补偿服务的回滚执行。
[0020]图13A描绘了根据本公开的一些其他实施例的服务段和补偿服务段之间的示例相关性。
[0021]图13B描绘了根据本公开的一些其他实施例的业务的服务的示例执行。
[0022]图13C描绘了根据本公开的一些其他实施例的回滚执行计划的示例。
[0023]图13D描绘了根据本公开的一些其他实施例的针对业务的补偿服务的示例回滚执行。
[0024]图14A描绘了根据本公开的又一些实施例的服务段与补偿服务段之间的示例相关性。
[0025]图14B描绘了根据本公开的又一些实施例的业务的服务的示例执行。
[0026]图14C描绘了根据本公开的又一些实施例的回滚执行计划的示例。
[0027]图14D描绘了根据本公开的又一些实施例的针对业务的补偿服务的示例回滚执行。
[0028]图15描绘了根据本公开的一些实施例的示例方法的流程图。
具体实施方式
[0029]一些实施例将参照附图更详细地描述,其中示出了本公开的实施例。然而,本公开可以以各种方式实施,因此不应该被理解为限于本公开所公开的实施例。
[0030]需要理解的是,虽然本公开包括云计算的详细描述,但本文中所叙述的教导的实施方式并不局限于云计算环境。相反,本公开的实施例能够与现在已知或后来开发的任何其它类型的计算环境一起实施。
[0031]云计算是一种服务交付模型,用于使得能够方便地、按需地访问可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务),其能够以最小的管理努力或与服务的提供商的交互快速地供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
[0032]特性如下:
[0033]按需自助服务:云消费者可以单方面地根据需要自动地提供计算能力,诸如服务器时间和网络存储装置,而不需要与服务的提供者的人类交互。
[0034]广泛的网络接入:能力可通过网络获得并且通过标准机制接入,该标准机制促进异构瘦客户端平台或胖客户端平台(例如,移动电话、膝上型计算机和PDA)的使用。
[0035]资源池:提供商的计算资源被池化以使用多租户模型来服务于多个消费者,其中不同的物理和虚拟资源根据需要动态地指派和重新指派。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够以较高抽象级别(例如,国家、州或数据中心)指定位置。
[0036]快速弹性:能够快速和弹性地提供能力,在一些情况下自动地快速缩小和快速释
放以快速放大。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。
[0037]测量的服务:云系统通过在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某个抽象级别处利用计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。
[0038]服务模型如下:
[0039]软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。可通过诸如weB浏览器(例如,基于weB的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
[0040]平台即服务(PaaS):提供给消费者的能力是将消费者创建的或获取的使用由提供商支持的编程语言和工具创建的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。
[0041]基础设施即服务(IaaS):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种计算机实现的方法,包括:由一个或多个处理器检测业务中的多个服务中的至少两个服务被执行来改变第一全局变量的值;由所述一个或多个处理器获取跟踪信息,所述跟踪信息指示在所述多个服务的执行期间所述至少两个服务改变所述第一全局变量的值的第一顺序;响应于所述业务的失败,由所述一个或多个处理器至少部分地基于所述跟踪信息确定多个补偿服务的回滚执行计划,所述多个补偿服务被配置为分别补偿所述多个服务;以及由所述一个或多个处理器使所述多个补偿服务根据所述回滚执行计划来执行。2.如权利要求1所述的方法,其中确定所述回滚执行计划包括:由所述一个或多个处理器至少部分地基于所述跟踪信息来确定所述回滚执行计划,以指定所述多个补偿服务中的至少两个补偿服务被执行来改变所述第一全局变量的值的第二顺序,所述第二顺序与所述第一顺序相反。3.如权利要求1所述的方法,进一步包括:针对所述至少两个服务中的第一服务,由所述一个或多个处理器将所述第一服务划分成第一服务段序列,所述第一服务段序列中的第一服务段被执行以改变所述第一全局变量的值;以及由所述一个或多个处理器基于所述第一服务段序列确定所述多个补偿服务中的第一补偿服务,其中,所述第一补偿服务包括第一补偿服务段序列,所述第一补偿服务段序列将被独立调用以分别补偿所述第一服务段序列。4.如权利要求3所述的方法,其中,确定所述第一补偿服务包括:由所述一个或多个处理器向用户呈现所述第一补偿服务段序列的布局,所述第一补偿服务段序列与所述第一服务段序列的顺序相反;以及由所述一个或多个处理器接收所述用户对所述第一补偿服务段序列中的至少一个的输入。5.如权利要求3所述的方法,其中所述第一补偿服务段序列中的第一补偿服务段被确定来补偿所述第一服务段,并且其中确定所述回滚执行计划包括:响应于所述跟踪信息指示所述第一服务在所述多个服务中的第二服务之前改变所述第一全局变量的值,由所述一个或多个处理器生成所述回滚执行计划,以指定所述第一补偿服务的第一补偿服务段将在所述多个补偿服务中的第二补偿服务的补偿服务段的完全执行之后被调用,其中,所述第二补偿服务的补偿服务段被确定来补偿其中所述第一全局变量的值被改变的所述第二服务的服务段。6.如权利要求3所述的方法,其中所述第一服务段第一次改变所述第一全局变量的值,并且其中划分所述第一服务包括:由所述一个或多个处理器从所述第一服务中识别第二服务段,所述第二服务段被执行以在所...

【专利技术属性】
技术研发人员:王越魏菁菁郭迎春丁少君郭剑南
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1