[发明专利]一种基于Java多线程的处理方法和装置在审
| 申请号: | 202010540239.3 | 申请日: | 2020-06-12 |
| 公开(公告)号: | CN111708618A | 公开(公告)日: | 2020-09-25 |
| 发明(设计)人: | 曲长城 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
| 主分类号: | G06F9/46 | 分类号: | G06F9/46 |
| 代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 赖定珍 |
| 地址: | 100089 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 java 多线程 处理 方法 装置 | ||
本发明公开了一种基于Java多线程的处理方法和装置,该方法包括:在全量数据集中提取一条待处理数据,获取待处理数据的用户ID标识,在用户数据集合中,根据用户ID标识将待处理数据添加到用户ID标识的独立线程中,对独立线程中的用户ID标识的待处理数据进行处理,实现大量数据的高并发处理,保障同一个用户数据在一个线程里处理,实现了同用户id可先后顺序上发数据,通过多进程管控来实现资源的合理利用。
技术领域
本发明涉及批量数据处理领域,尤其涉及一种基于Java多线程的处理方法和装置。
背景技术
随着业务处理数据的提示,对系统的高并发量的要求,现有的多线程处理,每次都是随着数据量增加为提供效率而才行多起进程方式,且数据处理没有考虑到同用户id数据的先后顺序。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种基于Java多线程的处理方法和装置。
本发明解决上述技术问题的技术方案如下:
一种基于Java多线程的处理方法,包括:S1,在全量数据集中提取一条待处理数据;
S2,获取所述待处理数据的用户ID标识;
S3,在用户数据集合中,根据所述用户ID标识将所述待处理数据添加到所述用户ID标识的独立线程中;
S4,对所述独立线程中的所述用户ID标识的待处理数据进行处理。
本发明的有益效果是:本方案通过根据待处理数据的用户ID标识,将待处理数据添加到所述用户ID标识的独立线程中;对所述独立线程中的所述用户ID标识的待处理数据进行处理,实现大量数据的高并发处理,保障同一个用户数据在一个线程里处理,实现了同用户id可先后顺序上发数据,通过多进程管控来实现资源的合理利用。
进一步地,所述S3之前还包括:当所述用户数据集中不存在所述用户ID标识的线程,在所述用户数据集中生成带所述用户ID标识的处理线程,并将所述处理线程存储到所述用户数据集中。
采用上述进一步方案的有益效果是:本方案当用户数据集中不存在用户ID标识的线程,在用户数据集中生成带用户ID标识的处理线程,并将所述处理线程存储到所述用户数据集中,通过增加新用户的独立处理线程,实现了新用户数据能在一个线程里处理,同用户id可先后顺序上发数据。
进一步地,还包括:当所述待处理数据处理不成功,则将处理不成功的所述待处理数据放到当前所述用户ID标识的线程队列中,进行等待;并在所述全量数据集中提取下一条待处理数据。
采用上述进一步方案的有益效果是:本方案通过判断待处理数据是否处理成功,对处理不成功的数据放到当前所述用户ID标识的线程队列中等待,保证同一用户ID的数据能在同一个线程队列中处理,保证同一用户数据处理的连续性。
进一步地,在S1之前还包括:
S01,启动提取数据线程;
S02,判断所述全量数据集中的数据量是否大于预设数据量阈值,如果大于,则提取数据线程休息预设时间,如果小于预设阈值,则进行S03;
S03,提取预设数量的数据到所述全量数据集中。
采用上述进一步方案的有益效果是:本方案通过提取预设数量的数据到全量数据集中,保证全量数据集中有足够的待处理数据,同时满足全量数据集中满负荷的要求。
进一步地,所述S4之后还包括:判断所述用户ID标识的线程队列是否清空,如果清空,则释放线程;如果没有清空,则再进行S4步骤。
采用上述进一步方案的有益效果是:本方案通过判断线程队列是否清空来选择是否释放线程,从而及时释放线程资源,提高多线程处理数据的效率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010540239.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种显示装置制程方法和显示装置
- 下一篇:脱硫脱硝袋式除尘化方法及系统





