System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及事务处理领域,具体而言,涉及一种基于消息中间件的分布式事务的处理方法及装置。
技术介绍
1、应用系统在分布式的情况下,在通信时会有着一个显著的问题,即一个业务流程往往需要组合为一组的服务,且单单一次通信可能会经过dns服务,网卡、交换机、路由器、负载均衡等设备,而相应设备都不一定是一直稳定的,在数据传输的整个过程中,只要任意一个环节出错,都会导致数据停止传输的情况发生。
2、这样的情况在微服务下就更为明显了,例如一个业务由多个微服务逻辑构成,由于某个微服务异常,但是其他微服务都是正常,这样就无法保证数据的一致性。
技术实现思路
1、本申请实施例的目的在于提供一种基于消息中间件的分布式事务的处理方法及装置,用以解决了现有技术存在的无法保证数据一致性的问题。
2、第一方面,提供了一种基于消息中间件的分布式事务的处理方法,该方法可以包括:
3、所述发送端对目标事件的处理请求进行处理,得到处理成功结果,并将处理成功结果发送至所述消息中间件;
4、所述消息中间件将获取到的所述处理成功结果发送至所述消费端;
5、所述消费端若接收到所述处理成功结果,则向所述消息中间件发送目标应答;
6、所述消息中间件若未接收到所述目标应答,则根据配置的重试策略,执行将获取到的所述处理成功结果发送至所述消费端的步骤。
7、在一种可能的实现中,将包括处理成功的目标信息发送至所述消息中间件之后,所述方法还包括:
9、所述发送端在未接收到所述消息中间件发送的所述第一应答时,所述发送端重新执行将处理成功结果发送至所述消息中间件的步骤;
10、所述发送端重新执行至少一次的将处理成功结果发送至所述消息中间件的步骤后,且未接收到所述消息中间件发送的所述第一应答,执行回滚操作。
11、在一种可能的实现中,根据配置的重试策略,执行将获取到的所述处理成功结果发送至所述消费端的步骤之后,所述方法还包括:
12、所述消息中间若未接收到所述目标应答,则所述消息中间件将回滚指示标识发送至所述发送端,并生成回滚操作的提示信息,以使所述发送端执行回滚操作。
13、在一种可能的实现中,所述处理系统还包括可视化单元;
14、所述可视化单元接收所述发送端发送的所述回滚操作的提示信息,并将所述提示信息进行展示。
15、在一种可能的实现中,所述处理系统还包括缓存中间件;
16、所述缓存中间件对所述发送端、所述消费端和所述消息中间件对所述目标事件的处理状态进行标识,所述发送端的处理状态包括已执行、未执行和已回滚;所述消费端的处理状态包括已重试和已回滚。
17、在一种可能的实现中,所述重试策略包括间隔重试、立即重试和组合重试。
18、在一种可能的实现中,所述间隔重试包括固定间隔重试、增量间隔重试和指数递增间隔重试。
19、第二方面,提供了一种基于消息中间件的分布式事务的处理装置,该装置可以包括:
20、处理模块,用于所述发送端对目标事件的处理请求进行处理,得到处理成功结果,并将处理成功结果发送至所述消息中间件;
21、发送模块,用于所述消息中间件将获取到的所述处理成功结果发送至所述消费端;
22、以及,所述消费端若接收到所述处理成功结果,则向所述消息中间件发送目标应答;
23、执行模块,用于所述消息中间件若未接收到所述目标应答,则根据配置的重试策略,执行将获取到的所述处理成功结果发送至所述消费端的步骤。
24、第三方面,提供了一种电子设备,该电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
25、存储器,用于存放计算机程序;
26、处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一所述的方法步骤。
27、第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一所述的方法步骤。
28、本申请提供一种基于消息中间件的分布式事务的处理方法,该方法包括:发送端对目标事件的处理请求进行处理,得到处理成功结果,并将处理成功结果发送至消息中间件;消息中间件将获取到的处理成功结果发送至消费端;消费端若接收到处理成功结果,则向消息中间件发送目标应答;消息中间件若未接收到目标应答,则根据配置的重试策略,执行将获取到的处理成功结果发送至消费端的步骤。该方法能够通过消息中间件来保证消息和数据在发送端和消费端处理过程中传输的可靠性和一致性,以及提高请求的应答速率。
本文档来自技高网...【技术保护点】
1.一种基于消息中间件的分布式事务的处理方法,其特征在于,应用于包括服务单元和消息中间件的处理系统;其中,所述服务单元包括发送端和消费端;所述方法包括:
2.如权利要求1所述的方法,其特征在于,将包括处理成功的目标信息发送至所述消息中间件之后,所述方法还包括:
3.如权利要求2所述的方法,其特征在于,根据配置的重试策略,执行将获取到的所述处理成功结果发送至所述消费端的步骤之后,所述方法还包括:
4.如权利要求3所述的方法,其特征在于,所述处理系统还包括可视化单元;
5.如权利要求4所述的方法,其特征在于,所述处理系统还包括缓存中间件;
6.如权利要求1所述的方法,其特征在于,所述重试策略包括间隔重试、立即重试和组合重试。
7.如权利要求6所述的方法,其特征在于,所述间隔重试包括固定间隔重试、增量间隔重试和指数递增间隔重试。
8.一种基于消息中间件的分布式事务的处理装置,其特征在于,应用于包括服务单元和消息中间件的处理系统;其中,所述服务单元包括发送端和消费端;所述装置包括:
9.一种电
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。
...【技术特征摘要】
1.一种基于消息中间件的分布式事务的处理方法,其特征在于,应用于包括服务单元和消息中间件的处理系统;其中,所述服务单元包括发送端和消费端;所述方法包括:
2.如权利要求1所述的方法,其特征在于,将包括处理成功的目标信息发送至所述消息中间件之后,所述方法还包括:
3.如权利要求2所述的方法,其特征在于,根据配置的重试策略,执行将获取到的所述处理成功结果发送至所述消费端的步骤之后,所述方法还包括:
4.如权利要求3所述的方法,其特征在于,所述处理系统还包括可视化单元;
5.如权利要求4所述的方法,其特征在于,所述处理系统还包括缓存中间件;
6.如权利要求1所述的方法,其特征在于,所述...
【专利技术属性】
技术研发人员:黄进,
申请(专利权)人:厦门立林科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。