[发明专利]一种多线程数据消费方法及装置在审
申请号: | 202210740194.3 | 申请日: | 2022-06-28 |
公开(公告)号: | CN115033403A | 公开(公告)日: | 2022-09-09 |
发明(设计)人: | 韩晓辰;宋伟伟;荆世华;史艳庆;孙建鹏;李凌飞 | 申请(专利权)人: | 浪潮通用软件有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 宋薇薇;张元 |
地址: | 250101 山东省济*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多线程 数据 消费 方法 装置 | ||
本发明公开了一种多线程数据消费方法及装置,该方法包括:接收用户在订阅消息系统上的订阅消息;当确定内存中不存在包含订阅消息的第一数据包时,将订阅消息的偏移量记入原始序列,并将订阅消息放入线程池进行处理;当订阅消息处理正常时,存储订阅消息所属的第二数据包,订阅消息的偏移量记入处理序列;将处理序列与原始序列进行对比;当处理序列与原始序列对比成功时,向订阅消息系统提交偏移量,并向订阅消息的生产者发送反馈消息。这样,既能防止消息重复消费又能防止消息丢失,保证了数据交换应用的稳定运行。同时,提高自动化程度。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种多线程数据消费方法及装置。
背景技术
在分布式架构下,数据交换作为分布式架构下的数据或文件传输交换的核心节点,是数据流转的关键节点,也是整个数据流转架构的核心关键点。在稳定性、安全性、传输效率上均有较高要求。因此,如何提高数据交换或数据传输的稳定性,是本领域技术人员待解决的技术问题。
发明内容
有鉴于此,本发明实施例的目的在于提出一种多线程数据消费方法、装置及可读介质,以提高数据交换或数据传输的稳定性。
本发明实施例的一方面提供了一种多线程数据消费方法,该方法包括:
接收用户在订阅消息系统上的订阅消息;
当确定内存中不存在包含订阅消息的第一数据包时,将订阅消息的偏移量记入原始序列,并将订阅消息放入线程池进行处理;
当订阅消息处理正常时,存储订阅消息所属的第二数据包,订阅消息的偏移量记入处理序列;
将处理序列与原始序列进行对比;
当处理序列与原始序列对比成功时,向订阅消息系统提交偏移量,并向订阅消息的生产者发送反馈消息。
进一步的,接收用户在订阅消息系统上的订阅消息,包括:
读取第一扩展类型的配置文件,以获得订阅消息系统的消费者订阅配置,其中,偏移量的提交配置为手动提交;
启动订阅消息系统的消费者程序;
查询数据库中配置的内存缓存类型;
根据内存缓存类型调用内存的读取接口;
当内存缓存类型为第一缓存类型时,通过读取接口读取第一扩展类型的配置文件,以连接数据库。
进一步的,当确定内存中不存在包含订阅消息的第一数据包时,将订阅消息的偏移量记入原始序列,并将订阅消息放入线程池进行处理,包括:
当确定内存中不存在包含订阅消息的第一数据包时,读取第一扩展类型的配置文件,以获得订阅消息的处理队列的数量;
解析订阅消息并取得订阅消息对应的数据包的组织内码;
根据组织内码,获取唯一数字码;
根据唯一数字码和处理队列的数量,得到处理队列的余数M;
将订阅消息放入第M个处理队列中处理。
进一步的,将处理序列与原始序列进行对比,包括:
在启动订阅消息系统的消费者程序时,执行处理队列的程序;
每刷新一次处理队列的程序,对处理队列进行升序排序;
将处理序列与原始序列进行对比;
当索引位置及后续位置的数据相等时,得到最后一个匹配成功的值作为偏移量并加1提交给订阅消息系统。
进一步的,方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210740194.3/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置