技术领域:
本发明涉及计算机控制技术领域,具体讲是指一种基于服务调用状态自动重投实现服务异常快速补偿的方法。
背景技术:
:
目前,现有的企业服务总线或企业集成平台中,不存在对服务调用状态失败后快速补偿的机制,服务消费方通过企业集成平台调用服务失败后,完全需要服务消费方自行查询错误,并且及时进行重新调用,这无疑加大了服务消费方的工作强度,同时不便于企业集成平台统一管理和监控,使企业集成平台的作用没有充分体现,大大降低了接入企业集成平台的厂商与企业集成平台交互的效率。
技术实现要素:
:
本发明要解决的技术问题是,提供一种不但可以降低服务消费方的工作强度,而且便于企业集成平台统一管理和监控,大大提高接入企业集成平台的厂商与企业集成平台交互的效率的基于服务调用状态自动重投实现服务异常快速补偿的方法。
本发明的技术解决方案是,提供一种光基于服务调用状态自动重投实现服务异常快速补偿的方法,该方法包括以下步骤:
步骤1esb配置需要自动重投的信息以及重投策略,并写入重投配置表;
步骤2esb创建重投实例信息;
步骤3esb读取重投实例信息,进行自动重投,并将重投结果及时反馈给服务消费方。
优选地,本发明所述的一种光基于服务调用状态自动重投实现服务异常快速补偿的方法,其中,步骤1的具体实现方法如下:esb在服务注册中心配置需要自动重投的信息以及重投策略,完成配置后,服务注册中心会将这些配置信息实时同步到数据库的重投配置表中。
优选地,本发明所述的一种光基于服务调用状态自动重投实现服务异常快速补偿的方法,其中,步骤2的具体实现方法如下:esb根据重投配置信息以及服务消息调用记录中的异常信息,生成以服务消费方和服务为维度的重投实例,并入重投实例表,每一个重投实例会在这个维度的自动重投结束后自动删除,以确保数据的简洁易用性。
优选地,本发明所述的一种光基于服务调用状态自动重投实现服务异常快速补偿的方法,其中,步骤3的具体实现方法如下:
3.1esb读取以服务消费方和服务为维度的重投实例后,开始自动重投,同时记录重投次数;
3.2当重投后状态为成功时,esb结束本次重投任务,将结果反馈给服务消费方,当重投后状态为失败时,根据重投实例中的允许重投次数以及时间间隔,重新进行自动重投,直至达到允许重投的次数,这一过程中,如果重投后状态为成功,则结束本次重投任务,并将结果反馈给服务消费方;
3.3如果达到允许重投的最大次数后,重投的状态为失败,则通知服务消费方进行处理。
本发明的有益效果是:对服务消费方通过企业集成平台调用服务的状态出现失败时,能够通过企业集成平台的配置信息,实现本次记录的自动重投,重投成功后会把结果及时反馈给服务消费方,从而实现了服务状态失败后,企业集成平台方面的快速补偿,降低了服务消费方的工作强度,提高了系统运行效率。
附图说明:
图1为本发明一种光基于服务调用状态自动重投实现服务异常快速补偿的方法的流程示意图。
具体实施例:
下面结合附图和具体实施例对本发明一种光基于服务调用状态自动重投实现服务异常快速补偿的方法作进一步详细说明:
如图1所示,本发明一种光基于服务调用状态自动重投实现服务异常快速补偿的方法包括以下具体步骤:
步骤1esb配置需要自动重投的信息以及重投策略,并写入重投配置表:
所述步骤1的具体实现方法如下:esb在服务注册中心配置需要自动重投的信息以及重投策略,例如xx服务消费方访问xx服务,xx秒重投一次,允许重投xx次等等。完成配置后,服务注册中心会将这些配置信息实时同步到数据库的重投配置表中。
步骤2esb创建重投实例信息:
所述步骤2的具体实现方法如下:esb根据重投配置信息以及服务消息调用记录中的异常信息,生成以服务消费方和服务为维度的重投实例,并入重投实例表,每一个重投实例会在这个维度的自动重投结束后自动删除,以确保数据的简洁易用性。
步骤3esb读取重投实例信息,进行自动重投,并将重投结果及时反馈给服务消费方:
所述步骤3的具体实现方法如下:
3.1esb读取以服务消费方和服务为维度的重投实例后,开始自动重投,同时记录重投次数;
3.2当重投后状态为成功时,esb结束本次重投任务,将结果反馈给服务消费方,当重投后状态为失败时,根据重投实例中的允许重投次数以及时间间隔,重新进行自动重投,直至达到允许重投的次数,这一过程中,如果重投后状态为成功,则结束本次重投任务,并将结果反馈给服务消费方;
3.3如果达到允许重投的最大次数后,重投的状态为失败,则通知服务消费方进行处理。
以上所述的实施例仅仅是对本发明的优选实施例进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。