[发明专利]一种推拉结合的分布式云端并发采集方法在审
申请号: | 201710475030.1 | 申请日: | 2017-06-21 |
公开(公告)号: | CN107302577A | 公开(公告)日: | 2017-10-27 |
发明(设计)人: | 杨胜华 | 申请(专利权)人: | 山东浪潮云服务信息科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06;G06F17/30 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 高经 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 推拉 结合 分布式 云端 并发 采集 方法 | ||
技术领域
本发明涉及大数据分布式采集技术领域,具体提供一种推拉结合的分布式云端并发采集方法。
背景技术
计算机具有存储信息量大,使用者获取信息方便快捷等优点,受到广泛的应用。在实际应用时,计算机每时每刻都产生大量的数据,有些需要分析,有些需要存储,所有的这些需要处理的数据数量是庞大、并具有相似性的,所以需要对这些产生的大数据进行分析处理,采集需要的数据。但是,在现有的大数据分布式采集过程中,尤其涉及在分布式云端并发采集情况下,现有云端服务器采集大数据效率不高,服务器的并发采集数一般,采集的数据传输效率一般,影响服务器的数据采集效率。
专利号为CN 106502802 A的专利文献中,公开了一种基于Avro RPC传输的分布式云端并发采集方法。该发明所述的分布式云端并发采集方法,包括客户端和服务端两个模块,其中:在服务端设置有URL存放容器、规则配置容器、计数容器,规则配置容器存放客户端发送的采集规则,规定不同网站的采集策略;计数容器则根据采集策略,按照计数递减的方式推送采集网页实现并发采集功能;最后由URL存放容器存放客户端发送的URL并按照域名进行分组存放;客户端定期检验服务端状态,查看URL存放容器剩余容量,批量发送待采集网页,批量回收已采集网页,批量发送网页采集规则。该分布式云端并发采集方法提升了传输效率,并提升了采集的并发效率。但是,该分布式云端并发采集方法在云端网络不稳定的情况下,服务端没有感知到并继续推送待下载URL时,会导致待下载URL堆积。其次,存在现有规则配置不能及时清理问题。再次,在任务主动停止时,待下载URL仍然下载。最后,在任务请求超时时,不能主动关闭连接,具有一定的局限性。
发明内容
本发明的技术任务是针对上述存在的问题,提供一种云端根据自己的运行情况去请求待下载URL,从而有效的避免待下载URL堆积的推拉结合的分布式云端并发采集方法。
为实现上述目的,本发明提供了如下技术方案:
一种推拉结合的分布式云端并发采集方法,包括采集调度、采集服务端和采集云端三个模块,其中
采集调度模块包括提供拉取网页API接口、维护采集服务端和采集云端对应功能;采集服务端模块包括定时回收网页模块及定时发送配置及命令模块,提供定时回收网页、配置发送及获取云端状态功能;采集云端模块包括URL存放容器、配置缓存和计数容器,配置缓存基于缓存机制,进行配置的获取、存放和更新;
该分布式云端并发采集方法通过RPC实现推模式和拉模式两种远程调用方式,所述推模式是采集云端接收采集服务端定时通过RPC推送的信息,完成配置发送以及已下载网页回收,所述拉模式是采集云端定时向采集调度模块发起请求,计算所需的网页数量并从采集调度模块提供的API接口拉取采集所需的网页;
所述方法能实现待下载URL计算与请求功能、配置缓存功能、任务云端主动停止功能和请求超时主动关闭连接功能。
所述推模式为采集服务端向采集云端推送任务配置相关信息,将采集云端状态作为响应;拉模式为采集云端根据任务配置信息,主动向采集服务端发起请求。
作为优选,所述待下载URL计算与请求功能为采集云端计算各个任务请求数量,携带任务请求数量向采集服务端发起请求,采集服务端按照任务请求数量返回URL。
作为优选,采集云端计算各个任务请求数量时,即推模式具体包括以下步骤:
A)从配置缓存中获取全部正在运行任务;
B)遍历所有正在运行任务并判断运行任务在URL存放容器中是否存在,若存在执行步骤C),否则执行步骤D);
C)获取URL存放容器中相应任务的存量,与设定的该任务上限阀值差值即为待获取的该任务的URL数量;
D)设定的任务上限阀值即为待获取任务的URL数量;
E)将各个任务的数量放入请求中到采集服务端,等待采集服务端响应,响应即为符合要求的待下载URL。
作为优选,所述拉模式具体包括以下步骤:
1)采集服务端定时启动;
2)遍历采集服务端关联节点,发起RPC请求;
3)采集云端接收采集服务端推送的请求,判断请求类型是否是配置,若是,执行步骤4),否则执行步骤5);
4)采集云端存放配置;
5)判断请求类型是否是命令,若是,执行步骤6),否则执行步骤7);
6)采集云端执行相应命令;
7)判断请求类型是否是回收网页,若是,执行步骤8),否则执行步骤9);
8)采集云端返回已下载网页;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮云服务信息科技有限公司,未经山东浪潮云服务信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710475030.1/2.html,转载请声明来源钻瓜专利网。