admin 管理员组

文章数量: 1086019


2024年4月19日发(作者:包装容器标记代号)

分布式网络爬虫关键技术分析与实现—-分布式网络爬虫体系结构设计

一、 研究所属范围

分布式网络爬虫包含多个爬虫,每个爬虫需要完成的任务和单个的爬行器类似,它们

从互联网上下载网页,并把网页保存在本地的磁盘,从中抽取URL并沿着这些URL的指

向继续爬行.由于并行爬行器需要分割下载任务,可能爬虫会将自己抽取的URL发送给其他

爬虫。这些爬虫可能分布在同一个局域网之中,或者分散在不同的地理位置。

根据爬虫的分散程度不同,可以把分布式爬行器分成以下两大类:

1、基于局域网分布式网络爬虫:这种分布式爬行器的所有爬虫在同一个局域网里运行,

通过高速的网络连接相互通信.这些爬虫通过同一个网络去访问外部互联网,下载网页,所

有的网络负载都集中在他们所在的那个局域网的出口上。由于局域网的带宽较高,爬虫之间

的通信的效率能够得到保证;但是网络出口的总带宽上限是固定的,爬虫的数量会受到局

域网出口带宽的限制.

2、基于广域网分布式网络爬虫:当并行爬行器的爬虫分别运行在不同地理位置(或网

络位置),我们称这种并行爬行器为分布式爬行器.例如,分布式爬行器的爬虫可能位于中国,

日本,和美国,分别负责下载这三地的网页;或者位于CHINANET,CERNET,CEINET,分

别负责下载这三个网络的中的网页。分布式爬行器的优势在于可以子在一定程度上分散网

络流量,减小网络出口的负载。如果爬虫分布在不同的地理位置(或网络位置),需要间隔

多长时间进行一次相互通信就成为了一个值得考虑的问题。爬虫之间的通讯带宽可能是有

限的,通常需要通过互联网进行通信.

在实际应用中,基于局域网分布式网络爬虫应用的更广一些,而基于广域网的爬虫由于

实现复杂,设计和实现成本过高,一般只有实力雄厚和采集任务较重的大公司才会使用这种

爬虫。本论文所设计的爬虫就是基于局域网分布式网络爬虫。

二、分布式网络爬虫整体分析

分布式网络爬虫的整体设计重点应该在于爬虫如何进行通信。目前分布式网络爬虫按

通信方式不同分布式网路爬虫可以分为主从模式、自治模式与混合模式三种.

主从模式是指由一台主机作为控制节点负责所有运行网络爬虫的主机进行管理,爬虫

只需要从控制节点那里接收任务,并把新生成任务提交给控制节点就可以了,在这个过程

中不必与其他爬虫通信,这种方式实现简单利于管理.而控制节点则需要与所有爬虫进行通

信,它需要一个地址列表来保存系统中所有爬虫的信息.当系统中的爬虫数量发生变化时,

协调者需要更新地址列表里的数据,这一过程对于系统中的爬虫是透明的。但是随着爬虫

网页数量的增加。控制节点会成为整个系统的瓶颈而导致整个分布式网络爬虫系统性能下

降。主从模式的整体结构图:

自治模式是指系统中没有协调者,所有的爬虫都必须相互通信,比主从模式下爬虫要复

杂一些。自治模式的通信方式可以使用全连接通信或环形通信。全连接通信是指所用爬虫

都可以相互发送信息,使用这种方式的每个网络爬虫会维护一个地址列表,表中存储着整个

系统中所有爬虫的位置,每次通信时可以直接把数据发送给需要此数据的爬虫。当系统中的

爬虫数量发生变化时,每个爬虫的地址列表都需要进行更新.环形通信是指爬虫在逻辑上构

成一个环形网,数据在环上按顺时针或逆时针单向传输,每个爬虫的地址列表中只保存其前

驱和后继的信息.爬虫接收到数据之后判断数据是否是发送给自己的,如果数据不是发送给

自己的,就把数据转发给后继;如果数据是发送给自己的,就不再发送。假设整个系统中


本文标签: 爬虫 网络 分布式 需要 爬行