[发明专利]用于处理网络数据的方法和装置、服务器和存储介质有效
申请号: | 201710535376.6 | 申请日: | 2017-07-03 |
公开(公告)号: | CN107357526B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 安海雄 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/54 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 王蓉 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 处理 网络 数据 方法 装置 服务器 存储 介质 | ||
本公开提供了一种用于处理网络数据的方法,包括:将接收到的网络数据存储到第一缓冲区;从第一缓冲区解析网络数据;向消息队列系统发送解析后的网络数据;如果发送失败,则将解析后的网络数据存储到第二缓冲区。本公开通过设置两个缓冲区,提高了处理网络数据的可伸缩性、容错性和稳定性。
技术领域
本公开涉及网络技术,具体涉及用于处理网络数据的方法和装置、服务器和存储介质
背景技术
大数据的第一个环节是网络数据采集。网络数据采集一般通过在用户端埋点,埋点后通过Http协议上报网络数据到服务器。这种上报数据特点是数据海量,并发度要求很高,因为每一次点击都会产生一个或多个上报。这就要求http服务器具有高并发和高吞吐量。
现有解决方案是采用高性能能web服务器Nginx+lua。Nginx是一种高性能的web服务器,可用于负责接收数据,lua一种轻量级的脚本语言,可用于负责做简单的计算。然后可以将网络数据发送到kafka,并记录离线文件。其中,kafka是一种基于磁盘的消息队列系统,可以将网络数据按类型形成队列,并消费。
在实现本发明的过程中,发明人发现现有技术至少存在如下技术问题:这种设计的瓶颈在lua语言中的接收逻辑与Nginx高度耦合,在高并发下会拖慢Nginx速度,降低了系统的可伸缩性,在电商大促时突增的网络流量数据,只能通过扩容来解决。
发明内容
根据本公开的第一方面,提供了一种用于处理网络数据的方法,所述方法通常可以在服务器中执行,包括:将接收到的网络数据存储到第一缓冲区;从所述第一缓冲区解析所述网络数据;向消息队列系统(例如kafka集群)发送解析后的网络数据;如果发送失败,则将所述解析后的网络数据存储到第二缓冲区。
在一个实施例中,所述网络数据以磁盘日志文件的形式存储在所述第一缓冲区中。
在一个实施例中,所述方法还可以包括定期在所述第一缓冲区中产生包括相应时间段内的网络数据的磁盘日志文件。
在一个实施例中,所述解析后的网络数据以磁盘队列的形式存储在所述第二缓冲区中。
在一个实施例中,所述方法还可以包括根据到所述消息队列系统的网络条件,调整从所述第一缓冲区解析所述网络数据的速度,以提供到所述消息队列系统的平稳流量。
在一个实施例,所述方法还可以包括从第二缓冲区中取出网络数据重新向消息队列系统发送。
根据本公开的第二方面,提供了一种用于处理网络数据的装置,包括:第一缓冲单元,被配置为将网络数据存储到第一缓冲区;解析单元,被配置为从所述第一缓冲区解析所述网络数据;发送单元,被配置为向消息队列系统发送解析后的网络数据;以及第二缓冲单元,被配置为如果发送失败,则将所述解析后的网络数据存储到第二缓冲区。
在一个实施例中,所述网络数据可以以磁盘日志文件的形式存储在所述第一缓冲区中。
在一个实施例中,所述第一缓冲单元还可以被配置为定期在所述第一缓冲区中产生包括相应时间段内的网络数据的磁盘日志文件。
在一个实施例中,所述解析后的网络数据以磁盘队列的形式存储在所述第二缓冲区中。
在一个实施例中,所述解析单元还可以被配置为根据到所述消息队列系统的网络条件,调整从所述第一缓冲区解析所述网络数据的速度,以提供到所述消息队列系统的平稳流量
在一个实施例中,所述发送单元还可以被配置为从第二缓冲区中取出网络数据重新向消息队列系统发送。
根据本公开的第三方面,提供了一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710535376.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种网络虚拟架子鼓
- 下一篇:一种混合动力系统及使用该混合动力系统的车辆
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置