[发明专利]一种抗并发的数据写入方法和系统在审
申请号: | 201811265135.5 | 申请日: | 2018-10-29 |
公开(公告)号: | CN109522136A | 公开(公告)日: | 2019-03-26 |
发明(设计)人: | 刘丰 | 申请(专利权)人: | 无锡天脉聚源传媒科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F16/2453 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 谭英强 |
地址: | 214000 江苏省无锡市无锡*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 消息队列 写入 繁忙时段 数据存放 业务类型 分级 并发 数据库 信息技术领域 非繁忙时段 优先权顺序 拒绝接收 数据分配 数据源 优先权 读出 服务器 反馈 检测 分配 失败 应用 保证 | ||
本发明公开了一种抗并发的数据写入方法和系统,所述方法包括在繁忙时段,根据紧急程度对接收到的数据进行分级,根据分级结果,向数据分配优先权,根据分配的优先权顺序以及数据的业务类型,将数据存放到卡夫卡消息队列,当检测到不存在相同业务类型的卡夫卡消息队列而导致数据存放失败时,拒绝接收未能存放到卡夫卡消息队列中的数据,并向相应的数据源进行反馈,在非繁忙时段,将卡夫卡消息队列中存放的数据读出并写入到数据库中等步骤。本发明大幅降低繁忙时段服务器的负荷,同时能够保证重要的数据能够写入数据库。本发明广泛应用于信息技术领域。
技术领域
本发明涉及信息技术领域,尤其是一种抗并发的数据写入方法和系统。
背景技术
网络服务端在高峰繁忙时期会受到大量的访问,需要向服务器写入大量的数据。服务器的硬件资源有限,在访问量过大时容易因数据处理能力不足而崩溃,因此需要配套良好的抗并发算法。但现有的抗并发算法过于复杂,尤其是主流的抗并发算法,其基本原理是将数据均衡分配到多个备用服务器,因此现有技术是以设置了多个服务器为基础的,硬件投入成本高,虽然使用多个服务器能够达到抗并发的目的,但是单个硬件设备的工作效率不高。
发明内容
为了解决上述技术问题,本发明的目在于提供一种抗并发的数据写入方法和系统。
本发明所采取的第一技术方案是:
一种抗并发的数据写入方法,包括以下步骤:
在繁忙时段,根据紧急程度对接收到的数据进行分级;所述繁忙时段指负荷达到预设值的时段或预先设定的时段;
根据分级结果,向数据分配优先权;
根据数据分配到的优先权顺序以及数据的业务类型,将数据存放到对应的卡夫卡消息队列;所述卡夫卡消息队列具有对应的业务类型,所述卡夫卡消息队列用于接收相同业务类型的数据;
当检测到不存在相同业务类型的卡夫卡消息队列而导致数据存放失败时,拒绝接收未能存放到卡夫卡消息队列中的数据,并向相应的数据源进行反馈;
在非繁忙时段,将卡夫卡消息队列中存放的数据读出并写入到数据库中。
进一步地,所述方法还包括以下步骤:
在非繁忙时段,向被拒绝接收的数据相应的数据源发出重新传送数据的请求;
将接收到的数据写入到数据库中。
进一步地,所述卡夫卡消息队列的数量为多个,各卡夫卡消息队列对应不同的优先权,各卡夫卡消息队列分别被配置为可读可写模式、只读模式或只写模式。
进一步地,所述根据分配的优先权顺序,将数据存放到卡夫卡消息队列这一步骤,具体包括:
对各卡夫卡消息队列进行扫描,从中查找出匹配队列并检测匹配队列的存储空间;所述匹配队列由各卡夫卡消息队列中的一个或多个组成,所述匹配队列与待存放数据具有相同优先权顺序;
当判断所述匹配队列的存储空间足以完全存放待存放数据时,则将待存放数据拷贝到所述匹配队列中,反之,则将待存放数据分解成第一部分和第二部分,然后将第一部分拷贝到所述匹配队列中,将第二部分拷贝到优先权顺序次于匹配队列的卡夫卡消息队列中;其中,所述第一部分的占据空间与匹配队列的存储空间相等。
进一步地,所述将第二部分拷贝到优先权顺序次于匹配队列的卡夫卡消息队列中这一步骤,具体包括:
对各卡夫卡消息队列进行扫描,从中查找出次级队列并检测次级队列的存储空间;所述次级队列由各卡夫卡消息队列中的一个或多个组成,所述次级队列的优先权顺序比匹配队列的优先权顺序次一级;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡天脉聚源传媒科技有限公司,未经无锡天脉聚源传媒科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811265135.5/2.html,转载请声明来源钻瓜专利网。