网页采集任务分配方法及系统与流程

文档序号:13804641阅读:141来源:国知局
网页采集任务分配方法及系统与流程

本发明涉及数据处理领域,尤其涉及一种网页采集任务分配方法及系统。



背景技术:

网页采集是一种对特定网页进行采集的简称,对于网页采集而言,现有的网页采集一般在分布式系统内实现,但是现有的网页采集无法依据实际情况对网页采集的任务进行分配,导致网页采集效率低。



技术实现要素:

本申请提供一种网页采集任务分配方法。其解决现有技术的技术方案效率低的缺点。

一方面,提供一种网页采集任务分配方法,所述方法包括如下步骤:

分布式设备接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务;

分布式设备将n个数据包依次发送给分布式设备的其他m个设备;

分布式设备统计m个设备返回的n个数据包的m个时延和;

分布式设备依据该m个时延和分配网页采集任务。

可选的,所述分布式设备依据该m个时延和分配网页采集任务,具体包括:

分布式设备对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

可选的,所述方法还包括:

分布式设备在配置完第一网页采集任务时,将第一网页采集任务群发给分布式系统的其他设备,接收其他设备返回的确认消息。

第二方面,提供一种网页采集任务分配系统,所述系统包括:分布式设备以及m个设备,所述分布式设备与m个设备连接;

分布式设备,用于接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务;将n个数据包依次发送给分布式设备的其他m个设备;统计m个设备返回的n个数据包的m个时延和;依据该m个时延和分配网页采集任务;

所述m个设备,用于接收分配网页采集任务执行网页采集。

可选的,所述分布式设备,还用于对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

可选的,所述分布式设备,还用于在配置完第一网页采集任务时,将第一网页采集任务群发给分布式系统的其他设备,接收其他设备返回的确认消息。

第三方面,提供一种分布式设备,包括:处理器、无线收发器、存储器和总线,所述处理器、无线收发器、存储器通过总线连接,

所述无线收发器,用于接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务;

所述处理器,用于控制无线收发器将n个数据包依次发送给分布式设备的其他m个设备;统计m个设备返回的n个数据包的m个时延和;依据该m个时延和分配网页采集任务。

可选的,所述处理器,用于对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

可选的,所述处理器,用于在配置完第一网页采集任务时,将第一网页采集任务群发给分布式系统的其他设备,接收其他设备返回的确认消息。

第四方面,提供一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行第一方面提供的方法。

本发明提供的技术方案通过时延和来分配网页采集的任务,即时延和较小的设备分配较多的网页采集任务,时延和较大的设备分配较少的网页采集任务,从而提高了效率的优点。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明第一较佳实施方式提供的一种网页采集任务分配方法的流程图;

图2为本发明第二较佳实施方式提供的一种网页采集任务分配系统的结构图。

图3为本发明第二较佳实施方式提供的一种分布式设备的硬件结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1是本发明第一较佳实施方式提出的一种网页采集任务分配方法,该方法如图1所示,包括如下步骤:

步骤s101、分布式设备接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务。

步骤s102、分布式设备将n个数据包依次发送给分布式设备的其他m个设备,统计m个设备返回的n个数据包的m个时延和。

上述步骤s102的实现方法可以为:

分布式设备获取历史分享的数据包的大小(即容量,多少个mb或多个kb);提取历史数据包的大小区间,将该大小区间划分成n个子区间,分布式设备虚拟n个数据包,其中n个数据包中的第m个数据包的大小为n个区间中第m个子区间的中值,分布式设备将n个数据包依次发送给m个其他分布式设备,ue统计其他m个分布式设备中每个接入点的n个数据包的时延和,得到m个时延和。

下面以一个实际的例子来说明反馈参数为时间和的计算方式;

这里的数据包的大小具体可以包括:6mb、5mb、4mb、3mb、2mb、1mb,这里划分的n个区间以2个区间为例,具体的2个区间的范围可以为,区间1【6mb,4mb】;区间2【3mb,1mb】,那么分布式设备虚拟出2个数据包,为了方便说明,这里以数据包a表示第一区间虚拟数据包,数据包b表示第二区间虚拟数据包,数据包a的大小为5mb,数据包b的大小为2mb,将数据包a以及数据包b依次发送给m个其他设备,(这里以三个ap为例,分别为ap1,ap2以及ap3),ap1接收到数据包a以后会返回ack(1a),接收时间为tack(1a),数据包a的发送时间为t1a,ap1接收到数据包b以后会返回ack(1b),接收时间可以为tack(1b),数据包b的发送时间为t1b;那么ap1的时间和tap1=(tack(1a)-t1a)+(tack(1b)-t1b)。同理可以计算出tap2、tap3的值,ta(时延和平均值)=(tap1+tap2+tap3)/3。

步骤s103、分布式设备依据该m个时延和分配网页采集任务。

本发明提供的技术方案通过将爬虫任务依据设备的距离以及爬虫任务数量来分配该爬虫任务,实现了任务分配合理,从而提高了效率的优点。

可选的,上述步骤s103的实现方法具体可以为:

分布式设备对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

可选的,上述方法在步骤s103之后还可以包括:

分布式设备在配置完第一网页采集任务时,将第一网页采集任务群发给分布式系统的其他设备,接收其他设备返回的确认消息。

请参考图2,图2是本发明第二较佳实施方式提出的一种分布式爬虫实现系统,该系统如图2所示,包括:分布式设备201以及m个设备202,所述分布式设备与设备连接;

分布式设备,用于接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务;将n个数据包依次发送给分布式设备的其他m个设备;统计m个设备返回的n个数据包的m个时延和;依据该m个时延和分配网页采集任务;

该其他n个分布式设备202,用于接收分配网页采集任务执行网页采集。

可选的,所述分布式设备,还用于对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

可选的,所述分布式设备,还用于在配置完第一网页采集任务时,将第一网页采集任务群发给分布式系统的其他设备,接收其他设备返回的确认消息。

参阅图3,图3为一种分布式设备30,包括:处理器301、无线收发器302、存储器303和总线304,无线收发器302用于与外部设备之间收发数据。处理器301的数量可以是一个或多个。本申请的一些实施例中,处理器301、存储器302和收发器303可通过总线304或其他方式连接。服务器30可以用于执行图1的步骤。关于本实施例涉及的术语的含义以及举例,可以参考图1对应的实施例。此处不再赘述。

无线收发器302,用于接收或发起分配消息,所述分配消息用于在分布式系统中分配网页采集任务;

处理器301,用于控制无线收发器将n个数据包依次发送给分布式设备的其他m个设备;统计m个设备返回的n个数据包的m个时延和;依据该m个时延和分配网页采集任务。

其中,存储器303中存储程序代码。处理器901用于调用存储器903中存储的程序代码,用于执行以下操作:

处理器301,用于对m个时延和中位于第一区间的x个设备分配第一组网页采集任务,将第二区间的y个设备分给第二组网页采集任务,其中第一区间的x个设备的时延和低于第二区间的y个设备的时延和,第一组网页采集任务大于第二组网页采集任务。

需要说明的是,这里的处理器301可以是一个处理元件,也可以是多个处理元件的统称。例如,该处理元件可以是中央处理器(centralprocessingunit,cpu),也可以是特定集成电路(applicationspecificintegratedcircuit,asic),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digitalsingnalprocessor,dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,fpga)。

存储器303可以是一个存储装置,也可以是多个存储元件的统称,且用于存储可执行程序代码或应用程序运行装置运行所需要参数、数据等。且存储器303可以包括随机存储器(ram),也可以包括非易失性存储器(non-volatilememory),例如磁盘存储器,闪存(flash)等。

总线304可以是工业标准体系结构(industrystandardarchitecture,isa)总线、外部设备互连(peripheralcomponent,pci)总线或扩展工业标准体系结构(extendedindustrystandardarchitecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

该终端还可以包括输入输出装置,连接于总线304,以通过总线与处理器301等其它部分连接。该输入输出装置可以为操作人员提供一输入界面,以便操作人员通过该输入界面选择布控项,还可以是其它接口,可通过该接口外接其它设备。

需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取器(英文:randomaccessmemory,简称:ram)、磁盘或光盘等。

以上对本发明实施例所提供的内容下载方法及相关设备、系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1