一种服务补偿方法及装置制造方法及图纸

技术编号:20164490 阅读:49 留言:0更新日期:2019-01-19 00:17
本申请提供一种一种服务补偿方法及装置,该方法应用于客户端,可以包括:根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置;向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务;当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。

【技术实现步骤摘要】
一种服务补偿方法及装置
本申请涉及通信
,尤其涉及一种服务补偿方法及装置。
技术介绍
在OLTP(On-LineTransactionProcessing,联机事务处理过程)系统领域,在大部分业务场景下都会面临事务一致性的问题。尤其是在大型互联网系统包含成百上千个分布式事务的情况下,如何高效地保证每个分布式事务的回滚、提交或者重试的实现模式是完全一致的,是个极其重要的问题。
技术实现思路
有鉴于此,本申请提供一种服务补偿方法及装置,可以使得开发人员在实现分布式服务一致性的时候,只需要对服务参数和补偿策略的参数的具体取值进行设置即可,而无需关心各个服务的设计以及补偿的调度和管理,从而提高了效率。为实现上述目的,本申请提供技术方案如下:根据本申请的第一方面,提出了一种服务补偿方法,应用于客户端;所述方法包括:根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置;向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务;当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。根据本申请的第二方面,提出了一种服务补偿方法,应用于服务端;所述方法包括:接收客户端发送的针对目标服务的请求指令,所述目标服务由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的服务参数进行配置得到;响应于所述请求指令,向所述客户端输出所述目标服务;其中,当输出所述目标服务失败时,由所述客户端按照配置的补偿策略对所述目标服务进行补偿,所述补偿策略由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的补偿策略进行配置得到。根据本申请的第三方面,提出了一种服务补偿装置,应用于客户端;所述装置包括:配置单元,根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置;发送单元,向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务;补偿单元,当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。根据本申请的第四方面,提出了一种服务补偿装置,应用于服务端;所述装置包括:接收单元,接收客户端发送的针对目标服务的请求指令,所述目标服务由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的服务参数进行配置得到;输出单元,响应于所述请求指令,向所述客户端输出所述目标服务;其中,当输出所述目标服务失败时,由所述客户端按照配置的补偿策略对所述目标服务进行补偿,所述补偿策略由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的补偿策略进行配置得到。由以上技术方案可见,本申请通过预先配置服务定义表,用于对分布式服务进行定义。其中,服务定义表中包含对服务参数的定义和补偿策略的定义。那么,开发人员在通过客户端调用各个分布式服务时,只需要对服务参数和补偿策略的参数的具体取值进行设置即可,而无需关心各个服务的设计以及补偿的设计、调度和管理,从而提高了效率。同时,基于对补偿策略的定义和配置,可保证分布式服务的一致性。附图说明图1是本申请一示例性实施例示出的一种服务补偿方法的流程图。图2是本申请一示例性实施例示出的另一种服务补偿方法的流程图。图3是本申请一示例性实施例示出的一种服务补偿方法的交互图。图4是本申请一示例性实施例示出的一种服务补偿系统的架构示意图。图5是本申请一示例性实施例示出的客户端标记请求记录的流程图。图6是本申请一示例性实施例示出的服务端记录处理状态的流程图。图7是本申请一示例性实施例示出的客户端执行补偿操作的流程图。图8是本申请一示例性实施例示出的一种基于客户端侧的电子设备的结构示意图。图9是本申请一示例性实施例示出的一种服务补偿装置的框图。图10是本申请一示例性实施例示出的一种基于服务端侧的电子设备的结构示意图。图11是本申请一示例性实施例示出的另一种服务补偿装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。请参见图1,图1是本申请一示例性实施例示出的一种服务补偿方法的流程图。如图1所示,该方法应用于客户端,可以包括以下步骤:步骤102,根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置。步骤104,向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务。步骤106,当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。在本实施例中,通过预先配置服务定义表用于对分布式服务(服务定义表中包含对服务参数的定义和补偿策略的定义),使得开发人员在通过客户端调用各个分布式服务时,只需要对服务参数和补偿策略的参数的具体取值进行设置即可,而无需关心各个服务的设计以及补偿策略的设计、调度和管理,从而提高了效率。同时,基于对补偿策略的定义和配置,当服务端输出目标服务失败时,可按照配置好的补偿策略对目标服务进行补偿(比如重试),从而保证目标服务的一致性。在本实施例中,所述服务参数可包括以下至少之一:服务名称、服务请求标识符、服务类型、请求参数、请求处理状态;所述策略参数可包括以下至少之一:重试次数、补偿方式、重试间隔;其中,所述补偿方式包括:重发、回滚、忽略。那么,开发人员在实现分布式服务一致性时,只需对上述参数的取值进行配置即可,并不需要设计与补偿策略相关的业务代码,从而可有效提高效率。在本实施例中,针对目标服务(比如,可以是分布式服务)的类型(包括强一致性服务和弱一致性服务),客户端与服务端之间可采用不同的调用方式。具体的,客户端可判断所述目标服务的类型,当所述目标服务属于强一致性服务时,采用远程过程调用的方式向所述服务端请求调用所述目标服务;当所述目标服务属于弱一致性服务时,可采用消息队列的方式向所述服务端请求调用所述目标服务。其中,对于强一致性服务,采用RPC(RemoteProcedureCall,远程过程调用)的方式调用,可保证服务的实时性本文档来自技高网...

【技术保护点】
1.一种服务补偿方法,其特征在于,应用于客户端;所述方法包括:根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置;向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务;当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。

【技术特征摘要】
1.一种服务补偿方法,其特征在于,应用于客户端;所述方法包括:根据接收到的服务配置指令,对预设服务定义表中预定义的服务参数进行配置以得到目标服务,以及对补偿策略的策略参数进行配置;向服务端发送针对所述目标服务的请求指令,以使得所述服务端响应于所述请求指令,向所述客户端输出所述目标服务;当所述服务端输出所述目标服务失败时,按照配置的补偿策略对所述目标服务进行补偿。2.根据权利要求1所述的方法,其特征在于,还包括:判断所述目标服务的类型;所述向服务端发送针对所述目标服务的请求指令,包括:当所述目标服务属于强一致性服务时,采用远程过程调用的方式向所述服务端请求调用所述目标服务;当所述目标服务属于弱一致性服务时,采用消息队列的方式向所述服务端请求调用所述目标服务。3.根据权利要求1所述的方法,其特征在于,所述服务参数包括以下至少之一:服务名称、服务请求标识符、服务类型、请求参数、请求处理状态;所述策略参数包括以下至少之一:重试次数、补偿方式、重试间隔;其中,所述补偿方式包括:重发、回滚、忽略。4.一种服务补偿方法,其特征在于,应用于服务端;所述方法包括:接收客户端发送的针对目标服务的请求指令,所述目标服务由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的服务参数进行配置得到;响应于所述请求指令,向所述客户端输出所述目标服务;其中,当输出所述目标服务失败时,由所述客户端按照配置的补偿策略对所述目标服务进行补偿,所述补偿策略由所述客户端根据接收到的服务配置指令对预设服务定义表中预定义的补偿策略进行配置得到。5.根据权利要求4所述的方法,其特征在于,各服务的补偿记录存储于区别于所述客户端与所述服务端的第三方设备中,以由所述客户端与所述服务端主动向所述第三方设备中读取。6.一种服务补偿...

【专利技术属性】
技术研发人员:张君华
申请(专利权)人:传化智联股份有限公司
类型:发明
国别省市:浙江,33

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

1