[发明专利]高并发数据存储方法及装置有效
申请号: | 201510009667.2 | 申请日: | 2015-01-08 |
公开(公告)号: | CN104598563B | 公开(公告)日: | 2018-09-04 |
发明(设计)人: | 兰健 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F9/46 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 路凯;胡彬 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 并发 队列 数据存储 主数据 数据库 客户端 缓存 并发存储 存储效率 异步存储 多线程 宕机 存储 发送 缓解 响应 | ||
1.一种高并发数据存储方法,其特征在于,所述方法包括:
接收多个客户端发送来的高并发数据;
将所述高并发数据推送到主数据队列,并响应相应的客户端,其中,主数据队列是所有数据的主入口队列,当数据推送到该队列之后,立刻返回结果;
利用多线程消费所述主数据队列中的高并发数据;
将所述高并发数据的主键对本地队列的数量进行取模,其中,本地队列根据所述高并发数据的数据量进行横向扩展,当数据量大的时候扩展本地队列的数量;
根据相同的取模计算结果将对应的高并发数据分成一片;
根据取模计算结果将分片后的高并发数据推送到相应编号的本地队列中;
消费本地队列上的高并发数据并存储到数据库中。
2.根据权利要求1所述的方法,其特征在于,消费本地队列上的高并发数据并存储到数据库中,包括:
利用定时调度消费本地队列上的高并发数据;
将消费的高并发数据存储到数据库中。
3.根据权利要求2所述的方法,其特征在于,所述定时调度由Quartz实现。
4.一种高并发数据存储装置,其特征在于,所述装置包括:
接收模块,用于接收多个客户端发送来的高并发数据;
第一推送模块,用于将所述高并发数据推送到主数据队列,并响应相应的客户端,其中,主数据队列是所有数据的主入口队列,当数据推送到该队列之后,立刻返回结果;
消费模块,用于利用多线程消费所述主数据队列中的高并发数据;
分片模块,用于将所述高并发数据的主键对本地队列的数量进行取模;根据相同的取模计算结果将对应的高并发数据分成一片,其中,本地队列根据所述高并发数据的数据量进行横向扩展,当数据量大的时候扩展本地队列的数量;
第二推送模块,用于根据取模计算结果将分片后的高并发数据推送到相应编号的本地队列中;
存储模块,用于消费本地队列上的高并发数据并存储到数据库中。
5.根据权利要求4所述的装置,其特征在于,所述存储模块包括:
消费子模块,用于利用定时调度消费本地队列上的高并发数据;
存储子模块,用于将消费的高并发数据存储到数据库中。
6.根据权利要求5所述的装置,其特征在于,所述定时调度由Quartz实现。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510009667.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:气溶胶吸入装置
- 下一篇:网页的发布、访问方法和系统