[go: up one dir, main page]

CN117579229A - 一种分布式事务处理方法及系统 - Google Patents

一种分布式事务处理方法及系统 Download PDF

Info

Publication number
CN117579229A
CN117579229A CN202211681505.XA CN202211681505A CN117579229A CN 117579229 A CN117579229 A CN 117579229A CN 202211681505 A CN202211681505 A CN 202211681505A CN 117579229 A CN117579229 A CN 117579229A
Authority
CN
China
Prior art keywords
message
data
service
message data
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211681505.XA
Other languages
English (en)
Inventor
郭传刚
陈国伟
唐锋
林松斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Taichuan Cloud Technology Co ltd
Original Assignee
Zhuhai Taichuan Cloud Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Taichuan Cloud Technology Co ltd filed Critical Zhuhai Taichuan Cloud Technology Co ltd
Priority to CN202211681505.XA priority Critical patent/CN117579229A/zh
Publication of CN117579229A publication Critical patent/CN117579229A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/08Arrangements for detecting or preventing errors in the information received by repeating transmission, e.g. Verdan system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种分布式事务处理方法及系统,涉及计算机技术领域,所述方法包括:生成端业务系统生成业务数据,处理业务数据及对应的消息数据;并将业务数据及消息数据保存到数据库中;将消息数据的状态设置为待发送;业务数据处理完成后,将消息数据发送给消息中间件;消息中间件接收到消息数据后,主动回复确认收到;生成端业务系统将消息数据的状态设置为已发送;当消费端业务系统订阅到消息中间件的消息数据后,判断消息数据是否被消费,如果是,则放弃消息;否则,根据消息数据进行业务处理,向消息中间件发送确认完成;消息中间件删除消息数据,本发明提供的技术方案不要求所有服务在同一时间的数据完全一致,而是只要最终数据一致即可。

Description

一种分布式事务处理方法及系统
技术领域
本发明涉及计算机技术领域,具体涉及一种分布式事务处理方法及系统。
背景技术
分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。根据分布式系统CAP理论,一致性(Consistency,C)、可用性(Availability,A)、分区容错性(Partition Tolerance,P)三者不可兼得。现有技术中,大部分的分布式事务各服务系统只能保证自己的数据一致性,无法保证关联系统的数据最终一致;当涉及多个系统时,一旦某个系统出现异常,无法及时发现或处理异常数据,导致数据最终不一致;并且还存在并发量过大时,容易超时,无法处理相关业务等技术问题。
发明内容
本发明提供的一种分布式事务处理方法及系统,解决了上述技术问题。
本发明提供了一种分布式事务处理方法,包括:
步骤A1:生成端业务系统生成业务数据,在一个事务处理中处理业务数据及与业务数据对应的消息数据;并将业务数据及与业务数据对应的消息数据保存到数据库中;将与业务数据对应的消息数据的状态设置为待发送;
步骤A2:业务数据处理完成后,将与业务数据对应的消息数据发送给消息中间件;
步骤A3:消息中间件接收到消息数据后,向生成端业务系统回复确认收到;
步骤A4:生成端业务系统将与业务数据对应的消息数据的状态设置为已发送;
当消费端业务系统订阅到消息中间件的消息数据后,执行步骤S1;
步骤S1:判断消息数据是否被消费,如果是,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
步骤S2:向消息中间件发送确认完成;
步骤S3:消息中间件删除与业务数据对应的消息数据。
可选地,还包括:
消息服务补偿监控系统在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
可选地,所述步骤S1具体为:在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息ID存储在REDIS和数据库中。
可选地,所述步骤s1具体为:消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;如果是未处理,则根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息处理状态设置为已处理。
可选地,所述步骤s1中根据消息数据进行业务处理具体为:消费端业务系统根据消息数据进行业务处理,若处理成功则执行步骤S2;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
本发明还提供了一种分布式事务处理系统,包括:生成端业务系统、消息中间件、消费端业务系统;
所述生成端业务系统,包括:生成模块、第一处理模块、第一保存模块、设置模块、第一发送模块和第一接收模块;
所述消息中间件包括:第二接收模块、第二发送模块、第三接收模块和删除模块;
所述消费端业务系统包括:判断模块、第二处理模块和第三发送模块;
所述生成模块,用于生成业务数据;
所述第一处理模块,用于一个事务处理中处理业务数据及与业务数据对应的消息数据;
所述第一保存模块,用于将业务数据及与业务数据对应的消息数据保存到数据库中;
所述第一发送模块,用于将与业务数据对应的消息数据发送给消息中间件;
所述第一接收模块,用于接收来自消息中间件的确认收到消息数据;
设置模块,用于当消息数据保存到数据库中后,将与业务数据对应的消息数据的状态设置为待发送;还用于当第一接收模块接收到来自消息中间件的确认收到消息数据后,将与业务数据对应的消息数据的状态设置为已发送;
所述第二接收模块,用于接收来自生成端业务系统的消息数据;
所述第二发送模块,用于向所述消费端业务系统发送确认收到消息数据;
所述第三接收模块,用于接收来自消费端业务系统的确认完成;
所述删除模块,用于当所述第三接收模块接收到来自消费端业务系统的确认完成后,删除与业务数据对应的消息数据;
所述判断模块,用于当消费端业务系统订阅到消息中间件的消息数据后。判断消息数据是否被消费,若是则放弃消息数据;
所述第二处理模块,用于当所述判断模块判断为否后,根据消息数据进行业务处理;
所述第三发送模块,用于所述第二处理模块处理完成后向消息中间件发送确认完成。
可选地,还包括:消息服务补偿监控系统;
所述消息服务补偿监控系统,用于在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
可选地,所述判断模块,具体用于在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;
所述消费端业务系统还包括第二保存模块;
所述第二保存模块,用于在所述第二处理模块根据消息数据进行业务处理之后,将消息数据的消息ID存储在REDIS和数据库中。
可选地,所述判断模块,具体用于消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;
所述消费端业务系统还包括第三保存模块;
所述第三保存模块,用于在所述第二处理模块根据消息数据进行业务处理之后,将消息数据的消息处理状态设置为已处理。
可选地,所述第二处理模块,具体用于根据消息数据进行业务处理;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
本发明的有益效果:本发明提供了一种分布式事务处理方法及系统,本发明可以根据数据的特点及业务场景,本发明提供的技术方案不要求所有服务在同一时间的数据完全一致,而是只要最终数据一致即可。即实现的是AP模型,数据只要最终一致即可。
附图说明
图1为本发明实施例提供的一种分布式事务处理方法中的生成端业务系统的操作流程图;
图2为本发明实施例提供的当多个消费端业务系统订阅到消息中间件的消息数据后的操作流程图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例
本发提供了一种分布式事务处理方法,如图1和图2所示,包括:
步骤A1:生成端业务系统生成业务数据,在一个事务处理中处理业务数据及与业务数据对应的消息数据;并将业务数据及与业务数据对应的消息数据保存到数据库中;将与业务数据对应的消息数据的状态设置为待发送;
步骤A2:业务数据处理完成后,将与业务数据对应的消息数据发送给消息中间件;
步骤A3:消息中间件接收到消息数据后,向生成端业务系统回复确认收到;
步骤A4:生成端业务系统将与业务数据对应的消息数据的状态设置为已发送。
本实施例提供的分布式事务处理方法,还包括:
消息服务补偿监控系统在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
当消费端业务系统订阅到消息中间件的消息数据后,执行步骤S1;
步骤S1:消费端业务系统判断消息数据是否被消费,如果是,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理,若处理成功则执行步骤S2;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
步骤S2:向消息中间件发送确认完成;
步骤S3:消息中间件删除与业务数据对应的消息数据。
步骤S1具体为:在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息ID存储在REDIS和数据库中。
或者步骤S1具体为:消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;如果是未处理,则根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息处理状态设置为已处理。
更加具体地,本实施例提供的一种分布式事务处理方法,具体包括:生成端业务系统产生业务数据,即消息的生产者,此业务数据需要消费端业务系统进行消费;
生成端业务系统将与业务数据对应的消息数据发布到消息队列中;消费端业务系统订阅消费消息队列中的消息数据,并进行业务处理;
本实施例中,不同的消费端业务系统可以在与自身对应的消息队列中订阅消息数据。
生成端业务系统和消费端业务系统最终达到业务数据一致性。
消费端业务系统如果处理消息过程中,达到最大重试次数后,仍然无法处理消息数据,则将消息数据发送到死信队列中,等待人工处理。
本实施例提供的一种分布式事务处理方法是通过采用基于消息的数据最终一致性方案,为实现数据最终一致性方案,主要是解决以下两大问题。
一、可靠消息服务设计不同服务之间的业务数据同步。
可靠消息服务架构,具体流程如下:
由于消息中间件无法与业务数据实现事务处理,我们需要保障可靠的消息服务。
步骤1:生成端业务系统首先在一个事务中处理业务数据及需要发送的消息,保存到数据库中,此时消息数据的发送状态为待发送;
步骤2:当业务数据与消息数据处理在一个事务中处理完成后,生成端业务系统才可以调用发送消息模块,发送消息数据时,一定要消息中间件回复ACK后,才可以修改消息数据的发送状态,变成已发送;
步骤3:当发送消息数据或变更消息数据发送状态失败时,后续有消息服务补偿监控处理。
步骤4:当消息服务补偿监控发现有消息数据处于待发送状态时,则启动发送消息功能,发送消息数据。如发送消息数据达到最大重试次数仍没有发送成功,则将消息数据发送到死信队列,等待人工处理;
生成端业务系统发送消息或消息服务补偿监控发送消息都可能存在重复发送消息的问题。这个消息重复问题将交由消息消费端业务系统进行解决,即解决消息幂等性问题。
二、消费端业务系统解决消息幂等性的问题
消息中间件为保障消息不丢失且消息必达,允许发送测重复发送消息,要保障重复消息被消费时,多次执行与一次执行效果一致,与时间无关系。方案如下:
方案的选择由消费端业务系统自身业务需求确定:
方案一:
1)当消费端业务系统需要消费消息数据时,首先将消息ID值对REDIS中进行查询是否消费过此消息,如无,则在查询数据库中是否消费过此消息,确保此消息没有消费过,如都没有此消息ID值,则正常处理消息数据,更新数据库。如REDIS中或数据库中已经有此消息ID,则放弃此消息的处理;
生成端业务系统当产生数据时,每个发送到消息队列中的消息数据,必须有一个唯一的ID值,重复的消息ID值相同。
2)消费端业务系统消费消息数据时,要先处理业务事项,处理完成后,程序主动发送ACK到消息中间件,消息中间件收到ACK后,再删除已消费的消息数据;
消息中间件服务不允许设置为自动ACK响应,要消息中间件主动发送ACK确认
3)处理完消息后,要将此消息ID更新到REDIS和数据库中,用以快速验证是否消费过此消息。
方案二:
1)当消费端业务系统需要消费消息数据时,消费端业务系统根据自身规则查询业务信息的消息处理状态,如果是已处理,则忽略此消息数据,如果是未处理,则处理此消息,将消息处理状态修改为已处理;
2)如在处理的过程中失败,则进行重试,如达到最大重试次数,则发送到死信队列,等待人工处理。
本实施例还提供了一种分布式事务处理系统,包括:生成端业务系统、消息中间件、消费端业务系统;
生成端业务系统,包括:生成模块、第一处理模块、第一保存模块、设置模块、第一发送模块和第一接收模块;
消息中间件包括:第二接收模块、第二发送模块、第三接收模块和删除模块;
消费端业务系统包括:判断模块、第二处理模块和第三发送模块;
生成模块,用于生成业务数据;
第一处理模块,用于一个事务处理中处理业务数据及与业务数据对应的消息数据;
第一保存模块,用于将业务数据及与业务数据对应的消息数据保存到数据库中;
第一发送模块,用于将与业务数据对应的消息数据发送给消息中间件;
第一接收模块,用于接收来自消息中间件的确认收到消息数据;
设置模块,用于当消息数据保存到数据库中后,将与业务数据对应的消息数据的状态设置为待发送;还用于当第一接收模块接收到来自消息中间件的确认收到消息数据后,将与业务数据对应的消息数据的状态设置为已发送;
第二接收模块,用于接收来自生成端业务系统的消息数据;
第二发送模块,用于向消费端业务系统发送确认收到消息数据;
第三接收模块,用于接收来自消费端业务系统的确认完成;
删除模块,用于当所述第三接收模块接收到来自消费端业务系统的确认完成后,删除与业务数据对应的消息数据;
判断模块,用于当消费端业务系统订阅到消息中间件的消息数据后。判断消息数据是否被消费,若是则放弃消息数据;
第二处理模块,用于当判断模块判断为否后,根据消息数据进行业务处理;
第三发送模块,用于第二处理模块处理完成后向消息中间件发送确认完成。
可选地,还包括:消息服务补偿监控系统;
消息服务补偿监控系统,用于在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
可选地,判断模块,具体用于在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;
消费端业务系统还包括第二保存模块;
第二保存模块,用于在第二处理模块根据消息数据进行业务处理之后,将消息数据的消息ID存储在REDIS和数据库中。
可选地,判断模块,具体用于消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;
消费端业务系统还包括第三保存模块;
第三保存模块,用于在第二处理模块根据消息数据进行业务处理之后,将消息数据的消息处理状态设置为已处理。
可选地,第二处理模块,具体用于根据消息数据进行业务处理;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
本实施例提供的一种分布式事务处理方法及系统,可以根据数据的特点及业务场景,本发明提供的技术方案不要求所有服务在同一时间的数据完全一致,而是只要最终数据一致即可。即实现的是AP模型,数据只要最终一致即可。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种分布式事务处理方法,其特征在于,包括:
步骤A1:生成端业务系统生成业务数据,在一个事务处理中处理业务数据及与业务数据对应的消息数据;并将业务数据及与业务数据对应的消息数据保存到数据库中;将与业务数据对应的消息数据的状态设置为待发送;
步骤A2:业务数据处理完成后,将与业务数据对应的消息数据发送给消息中间件;
步骤A3:消息中间件接收到消息数据后,向生成端业务系统回复确认收到;
步骤A4:生成端业务系统将与业务数据对应的消息数据的状态设置为已发送;
当消费端业务系统订阅到消息中间件的消息数据后,执行步骤S1;
步骤S1:判断消息数据是否被消费,如果是,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
步骤S2:向消息中间件发送确认完成;
步骤S3:消息中间件删除与业务数据对应的消息数据。
2.根据权利要求1所述的分布式事务处理方法,其特征在于,还包括:
消息服务补偿监控系统在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
3.根据权利要求1所述的分布式事务处理方法,其特征在于,所述步骤S1具体为:在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;否则,根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息ID存储在REDIS和数据库中。
4.根据权利要求1所述的分布式事务处理方法,其特征在于,所述步骤s1具体为:消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;如果是未处理,则根据消息数据进行业务处理,执行步骤S2;
根据消息数据进行业务处理之后还包括:将消息数据的消息处理状态设置为已处理。
5.根据权利要求1所述的分布式事务处理方法,其特征在于,所述步骤s1中根据消息数据进行业务处理具体为:消费端业务系统根据消息数据进行业务处理,若处理成功则执行步骤S2;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
6.一种分布式事务处理系统,其特征在于,包括:生成端业务系统、消息中间件、消费端业务系统;
所述生成端业务系统,包括:生成模块、第一处理模块、第一保存模块、设置模块、第一发送模块和第一接收模块;
所述消息中间件包括:第二接收模块、第二发送模块、第三接收模块和删除模块;
所述消费端业务系统包括:判断模块、第二处理模块和第三发送模块;
所述生成模块,用于生成业务数据;
所述第一处理模块,用于一个事务处理中处理业务数据及与业务数据对应的消息数据;
所述第一保存模块,用于将业务数据及与业务数据对应的消息数据保存到数据库中;
所述第一发送模块,用于将与业务数据对应的消息数据发送给消息中间件;
所述第一接收模块,用于接收来自消息中间件的确认收到消息数据;
设置模块,用于当消息数据保存到数据库中后,将与业务数据对应的消息数据的状态设置为待发送;还用于当第一接收模块接收到来自消息中间件的确认收到消息数据后,将与业务数据对应的消息数据的状态设置为已发送;
所述第二接收模块,用于接收来自生成端业务系统的消息数据;
所述第二发送模块,用于向所述消费端业务系统发送确认收到消息数据;
所述第三接收模块,用于接收来自消费端业务系统的确认完成;
所述删除模块,用于当所述第三接收模块接收到来自消费端业务系统的确认完成后,删除与业务数据对应的消息数据;
所述判断模块,用于当消费端业务系统订阅到消息中间件的消息数据后。判断消息数据是否被消费,若是则放弃消息数据;
所述第二处理模块,用于当所述判断模块判断为否后,根据消息数据进行业务处理;
所述第三发送模块,用于所述第二处理模块处理完成后向消息中间件发送确认完成。
7.根据权利要求6所述的分布式事务处理系统,其特征在于,还包括:消息服务补偿监控系统;
所述消息服务补偿监控系统,用于在数据库中查询与业务数据对应的消息数据的状态;若查询到与业务数据对应的消息数据的状态为待发送状态时,向消息中间件发送与业务数据对应的消息数据。
8.根据权利要求6所述的分布式事务处理系统,其特征在于,所述判断模块,具体用于在REDIS和数据库中查找消息数据的消息ID;如果查找到,则放弃消息数据;
所述消费端业务系统还包括第二保存模块;
所述第二保存模块,用于在所述第二处理模块根据消息数据进行业务处理之后,将消息数据的消息ID存储在REDIS和数据库中。
9.根据权利要求6所述的分布式事务处理系统,其特征在于,所述判断模块,具体用于消费端业务系统根据自身规则查询消息数据的消息处理状态,如果是已处理,则放弃消息数据;
所述消费端业务系统还包括第三保存模块;
所述第三保存模块,用于在所述第二处理模块根据消息数据进行业务处理之后,将消息数据的消息处理状态设置为已处理。
10.根据权利要求6所述的分布式事务处理系统,其特征在于,所述第二处理模块,具体用于根据消息数据进行业务处理;若处理失败,则继续根据消息数据进行业务处理,当失败超过预设次数后,则将消息数据发送到死信队列中,等待人工处理。
CN202211681505.XA 2022-12-27 2022-12-27 一种分布式事务处理方法及系统 Pending CN117579229A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211681505.XA CN117579229A (zh) 2022-12-27 2022-12-27 一种分布式事务处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211681505.XA CN117579229A (zh) 2022-12-27 2022-12-27 一种分布式事务处理方法及系统

Publications (1)

Publication Number Publication Date
CN117579229A true CN117579229A (zh) 2024-02-20

Family

ID=89888668

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211681505.XA Pending CN117579229A (zh) 2022-12-27 2022-12-27 一种分布式事务处理方法及系统

Country Status (1)

Country Link
CN (1) CN117579229A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119514497A (zh) * 2024-10-29 2025-02-25 中国民航信息网络股份有限公司 数据处理方法、装置、设备、存储介质及计算机程序产品
CN119557365A (zh) * 2025-01-24 2025-03-04 中国证券登记结算有限责任公司 一种业务处理方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119514497A (zh) * 2024-10-29 2025-02-25 中国民航信息网络股份有限公司 数据处理方法、装置、设备、存储介质及计算机程序产品
CN119557365A (zh) * 2025-01-24 2025-03-04 中国证券登记结算有限责任公司 一种业务处理方法和装置

Similar Documents

Publication Publication Date Title
CN100596049C (zh) 一种消息重发方法和系统
US8539107B2 (en) Personal information management data synchronization
US20110173495A1 (en) Method and System for Reliable Intersystem Message Notification
CN106844014B (zh) 分布式事务防悬挂的实现方法和装置
CN106302647B (zh) 消息分发方法及服务器
JP5128111B2 (ja) メッセージに関連付けられた順序を保存するためのシステム、並びに、その方法及びコンピュータ・プログラム
CN112788074A (zh) 数据发送方法、处理方法、接收方法及其设备、存储介质
US8484281B2 (en) System and method for callbacks based on web service addressing
CN107277083B (zh) 一种数据交互的处理方法、装置及系统
CN117579229A (zh) 一种分布式事务处理方法及系统
CN111258790B (zh) 异常补偿方法和装置
CN109144748B (zh) 一种服务器、分布式服务器集群及其状态驱动方法
CN110532066A (zh) 一种事务一致性的实现方法及系统
US20070162560A1 (en) System and method for asynchronous request response
CN112486707A (zh) 基于Redis的消息异步消费方法及装置
CN114356596A (zh) 分布式系统的消息处理方法和装置
CN111416823A (zh) 一种数据传输方法和装置
CN110798349B (zh) 一种配置分发、接收方法、设备及计算机可读存储介质
CN112468386B (zh) 一种重复消息的处理方法及终端
CN111124717A (zh) 消息投递方法、系统及计算机存储介质
CN112632093A (zh) 工单处理方法、设备、系统、存储介质及程序产品
CN116361309A (zh) 数据查询系统和缓存数据更新方法
CN119847786A (zh) 基于消息队列的分布式事务处理方法、计算机设备和介质
CN115802298B (zh) 一种短信提交报告和回执报告的处理方法与系统
CN113783666B (zh) 一种处理业务的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination