[发明专利]一种交易系统内部高可靠消息传输方法在审
申请号: | 202011083759.2 | 申请日: | 2020-10-12 |
公开(公告)号: | CN112162875A | 公开(公告)日: | 2021-01-01 |
发明(设计)人: | 叶峰;王泊;孙增 | 申请(专利权)人: | 上交所技术有限责任公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06Q40/04 |
代理公司: | 上海三方专利事务所(普通合伙) 31127 | 代理人: | 吴玮 |
地址: | 200131 上海市浦东新*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 交易系统 内部 可靠 消息 传输 方法 | ||
本发明涉及数据传输技术领域,具体来说是一种交易系统内部高可靠消息传输方法,包括发送端和接收端,接收端和发送端内部均需要维护一个缓存区,缓存区采用ringbuffer队列构造,缓存区设置了一个全序的指针队列和多个数据队列,全序指针队列有四个控制指针:待写入指针、待发送指针、待确认指针、已处理指针;四个指针的大小关系为:待写入指针≥待发送指针≥待确认指针≥已处理指针。本发明所提供的一种交易系统内部高可靠消息传输方法实现难度较低,且能够在保证高效通信的前提下,任意节点发生故障,均可以保证数据不丢失,不重复,且传输过程中数据顺序一致。
技术领域
本发明涉及数据传输技术领域,具体来说是一种交易系统内部高可靠消息传输方法。
背景技术
对于线上交易系统,其信息传输要求低时延,高吞吐量以及高效的故障恢复能力。传统的基于broker的消息队列,例如Kafka,RabbitMQ等,由于在信息传输的过程中需要通过代理,因此需要额外的网络通信时延,造成通讯延迟,现如今,基于点对点的传输是目前交易系统的主流方向。而基于点对点的数据传输,需要解决如何进行一对多发送,定序,选主,数据补传等在线上交易信息传输中需要解决的问题。
发明内容
本发明的目的在于解决现有技术的不足,提供一种基于组播的高可靠数据传输方案,以解决现有技术中对于线上交易系统点对点传输存在的问题
为了实现上述目的,本发明所采用的交易系统内部高可靠消息传输方法包括发送端和接收端,接收端和发送端内部均需要维护一个缓存区,缓存区采用ringbuffer队列构造,缓存区设置了一个全序的指针队列和多个数据队列,全序指针队列有四个控制指针:
待写入指针:下一个被发送数据写入的位置,小于该指针的数据均需要被发送;
待发送指针:该指针表示大于等于该指针的数据需要被发送;
待确认指针:小于该指针的内容表示传输完毕;
已处理指针:接收端将数据交给业务层处理的位置;
这四个指针的大小关系为:待写入指针≥待发送指针≥待确认指针≥已处理指针。
本发明还具有如下优选的技术方案:
进一步的,所述发送端包括Node1_*和Node2_*,Node1_*和Node2_*发送的是两份不同的数据,Node1_*中,Node1_1和Node1_2为一主一备,发送端中,主对外发送数据,备不对外发送数据,发送端主备都接收接收端发送的ack/nack控制消息。
进一步的,所述接收端包括Node3_*,Node3_*需要同时接收Node1_*,Node2_*发来的数据,Node3_*中Node3_1,Node3_2,Node3_3为主备关系,主节点开始接收发送端的数据,并将接收下来的数据进行全局编号,同时,将数据转发给备节点,此时,备节点不接收发送端的数据,而是接收接收端主节点的数据,接收过程中,间歇性发送ack消息,接收端主节点确认所有备节点接收完毕后,向发送端发送ack确认。
进一步的,所述ack消息向前移动待确认指针,确保这个指针前的数据接收方已经全部收到;假设ack消息传输顺序号为N,待确认指针设为N+1;ack消息向后移动待发送指针,用来补全丢失的数据。假设上次确认后,发送数据全部丢失,此时,待发送指针移动到待确认指针位置。
进一步的,ack消息无需保证高可靠传输。发送端只要收到有更大顺序号的ack出现,就可以移动已确认指针,将小于ack顺序号的缓存数据交给下游业务处理逻辑。
进一步的,所述nack消息无需保证高可靠传输。接收端只要发现数据跳号或丢失,定时发送nack消息,直至丢失顺序号补全。
进一步的,所述发送端发给接收端的每个主题数据都要求提供从0开始的顺序号。接收端通过顺序号,过滤重复数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上交所技术有限责任公司,未经上交所技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011083759.2/2.html,转载请声明来源钻瓜专利网。