[发明专利]基于加权轮叫算法的分布式爬虫任务调度方法有效
| 申请号: | 201410073829.4 | 申请日: | 2014-03-03 |
| 公开(公告)号: | CN103870329B | 公开(公告)日: | 2017-01-18 |
| 发明(设计)人: | 蒋昌俊;陈闳中;闫春钢;丁志军;王鹏伟;孙海春;邓晓栋;葛大劼 | 申请(专利权)人: | 同济大学 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
| 代理公司: | 上海天协和诚知识产权代理事务所31216 | 代理人: | 叶凤 |
| 地址: | 200092 *** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 加权 算法 分布式 爬虫 任务 调度 方法 | ||
1.一种基于加权轮叫算法的分布式爬虫任务调度方法,其特征在于,依次按照如下步骤实施:
1)根据规模不同,本发明将网络爬虫分为单机多线程、同构集中式、异构集中式、小型分布式和大型分布式五类爬虫,针对小型分布式的爬虫任务调度,小型分布式爬虫是指各个节点是分布式部署,部署在一个小的物理区域之中;
2)主从式架构部署,即一个主控节点和若干个分布式部署并且能和主控节点互通的爬虫节点,保证所有爬虫节点能够连至互联网;主控节点负责爬虫任务的调度工作,即一个待爬取的URL该分配给哪一个爬虫节点完成,以及去重工作,即将一个爬虫节点返回的一条URL得到的外链去重后当中新的待爬取的URL;爬虫节点则负责具体的爬虫工作,对每一条主控节点分配给它的URL去互联网上爬取它的整个HTML,并解析出这个页面中包含的外链,将这些信息返回给主控节点;
3)当爬虫节点第一次连接到主控节点时,主控节点给予它一个经验值作为初始权值;
4)主控节点根据基于加权轮叫的调度算法,不断选择出一个爬虫节点,将一个待爬取的URL任务分配给它;该调度算法,即设置一个当前调度权值,每当它减为非正数时重新初始化为当前所有节点权值的最大值,然后对每个节点依次询问,看其权值是否不小于当前调度权值,若是则得到调度,当所有节点询问完毕后,当前调度权值自减一个步长,再开始对每个节点依次询问,如此不断往复;而本发明提出的调度算法则根据本方法设定的权值计算方法和大量实验将其步长设定为4;
5)每当爬虫节点爬取完一个URL任务时,将结果返回给主控节点,主控节点根据本发明提出的根据最近任务完成时间和未完成的任务数的权值计算方法更新该爬虫节点的权值;
6)当一个爬虫节点的权值随着任务数的增加降为零时,主控节点将不再分配给其任务,直到它的权值重新恢复为正数时,才会重新得到分配;
7)这样主控节点不断将URL分配给爬虫节点,爬虫节点则不断将URL爬取得到其HTML和外链返回给主控节点,主控节点将外链去重后再重新分配出去;根据互联网的实际情况,这样整个系统就会永无止境的运行下去,不断爬取得到新的网页,直至人工根据实际情况手动停止;
8)拥有错误恢复机制,主控节点可以检测到爬虫节点的异常情况,并将其权值置零。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于同济大学,未经同济大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410073829.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:用于太阳能电池的铟掺杂硫化铅量子点敏化剂及制备方法
- 下一篇:耐高温高压电容





