[发明专利]多线程的数据处理方法、装置、处理器以及电子设备在审
申请号: | 202211686174.9 | 申请日: | 2022-12-27 |
公开(公告)号: | CN116107772A | 公开(公告)日: | 2023-05-12 |
发明(设计)人: | 王飞龙;何涛;李辉;邓辉;薛亮 | 申请(专利权)人: | 中国邮政储蓄银行股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/46;G06F8/30 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 史璐璐 |
地址: | 100032*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多线程 数据处理 方法 装置 处理器 以及 电子设备 | ||
本申请提供了一种多线程的数据处理方法、装置、处理器以及电子设备,该方法包括:通过多个第一线程,分别从第一消息队列中读取请求消息并将请求消息写入第二消息队列中,多个第一线程对应一个数据库,请求消息为请求更新数据库的消息;通过第二线程从第二消息队列中读取多个请求消息;将多个请求消息转换为对应的编程语言;串行执行各编程语言,以更新数据库。相比于并发更新数据库中的同一条记录,容易产生数据库锁等待,造成执行时间延长甚至超时导致业务失败的问题,本申请通过多个第一线程多线程产生消息,通过第二线程单线程消费消息,并通过串行执行编程语言,来串行更新数据库,消除了数据库锁,避免了执行时间延长甚至超时的问题。
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种多线程的数据处理方法、装置、计算机可读存储介质、处理器以及电子设备。
背景技术
现在的业务场景是多个线程同时消费消息队列中的请求消息,然后对请求消息进行处理,处理的逻辑就包含了根据请求消息中的分片执行ID(业务字段)更新表中的记录数据,因为是多线程处理,有可能同时更新数据库中的同一条记录。
当并发的更新数据库中的同一条记录时,会产生数据库锁等待,导致执行时间延长甚至超时导致业务失败。
发明内容
本申请的主要目的在于提供一种多线程的数据处理方法、装置、计算机可读存储介质、处理器以及电子设备,以解决现有技术中并发更新数据库中的同一条记录,造成执行时间延长甚至超时导致业务失败的问题。
根据本发明实施例的一个方面,提供了一种多线程的数据处理方法,包括:通过多个第一线程,分别从第一消息队列中读取请求消息并将所述请求消息写入第二消息队列中,多个所述第一线程对应一个数据库,所述请求消息为请求更新所述数据库的消息;通过第二线程从所述第二消息队列中读取多个所述请求消息;将多个所述请求消息转换为对应的编程语言;串行执行各所述编程语言,以更新所述数据库。
可选地,将多个所述请求消息转换为对应的编程语言,包括:将多个初始请求消息合并为目标请求消息,所述初始请求消息为业务相同的所述请求消息,多个所述请求消息中除所述初始请求消息之外的请求消息为其他请求消息;将所述目标请求消息以及所述其他请求消息分别转换为对应的所述编程语言。
可选地,在将多个初始请求消息合并为目标请求消息之前,所述方法还包括:从各所述请求消息中提取业务字段信息;根据各所述业务字段信息,确定所述业务字段信息相同的所述请求消息为所述初始请求消息。
可选地,串行执行各所述编程语言,以更新所述数据库,包括:串行执行各所述编程语言,以顺序更新所述数据库中对应的记录。
可选地,所述第二消息队列包括环形队列。
可选地,所述编程语言包括SQL语句。
根据本发明实施例的另一方面,还提供了一种多线程的数据处理装置,包括:第一读取单元,用于通过多个第一线程,分别从第一消息队列中读取请求消息并将所述请求消息写入第二消息队列中,多个所述第一线程对应一个数据库,所述请求消息为请求更新所述数据库的消息;第二读取单元,用于通过第二线程从所述第二消息队列中读取多个所述请求消息;转换单元,用于将多个所述请求消息转换为对应的编程语言;执行单元,用于串行执行各所述编程语言,以更新所述数据库。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行任意一种所述的方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的方法。
根据本发明实施例的另一方面,还提供了一种电子设备,包括:一个或多个处理器,存储器以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行任意一种所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国邮政储蓄银行股份有限公司,未经中国邮政储蓄银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211686174.9/2.html,转载请声明来源钻瓜专利网。