Heritrix源码分析(三) 修改配置文件order.xml加快你的抓取速度(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/629891
本博客已迁移到本人独立博客: http://www.yun5u.com/
欢迎加入Heritrix群(QQ):109148319,10447185 , Lucene/Solr群(QQ) : 118972724
Heritrix的order.xml分了很多组件,可以灵活的配置各个抓取参数。但很多人都关心如何使得抓取更快更久更多,这里首先从Heritrix自身着手吧,修改order.xml的一些参数其实也可以达到这一目的.
下面就列出各个参数、说明和理想值
| 序号 | 配置名 | 理想值 | 说明 |
| 1 | <long name="max-bytes-download">0</long> | 0 | 最大下载字节数,就是当Heritrix抓取了多少字节后停止抓取0表示为无限制 |
| 2 | <long name="max-document-download">0</long> | 0 | 最大下载文档数,就是当Heritrix抓取了多少URL则停止抓取,0表示没有限制 |
| 3 | <long name="max-time-sec">0</long> | 3 | 抓取一个网页的最大时间(秒),超过了该时间则不抓取,0表示没有这个限制 |
| 4 | <integer name="max-toe-threads">3</integer> | 50 | 抓取的线程数,表示有多少个线程去抓取,一般50足够了 |
| 5 | <float name="delay-factor">4.0</float> | 1.0 | 如果从某个队列抓取一个URL花费N秒,则下次从该队列获取URL去抓取则要延迟N*该值 |
| 6 | <integer name="max-delay-ms">20000</integer> | 2000 | 队列的最大延迟时间,单位为毫秒 |
| 7 | <integer name="min-delay-ms">2000</integer> | 0 | 队列的最小延迟时间,单位为毫秒 |
| 8 | <integer name="max-retries">30</integer> | 5 | URL抓取失败可以重试的次数,重试次数越少越好 |
| 9 | <integer name="total-bandwidth-usage-KB-sec">0</integer> | 0 | 总的 抓取速度(KB/秒)限制,0表示没有限制 |
| 10 | <integer name="max-per-host-bandwidth-usage-KB-sec">0</integer> | 0 |
每个域名抓取速度(KB/S)限制,0表示没有限制 |
| 11 | <integer name="target-ready-backlog">50</integer> | 200 | 准备队列中待抓取的URL个数,这些URL无需经过队列等待可以立刻去抓取 |
| 12 | <integer name="ip-validity-duration-seconds">21600</integer> | 0 | DNS有效时间(单位为秒),超过这个时间则要重新去获取DNS |
| 13 | <integer name="robot-validity-duration-seconds">86400</integer> | 0 | 爬虫协议(robots.txt)有效时间,超过这个时间则要重新去读取robots.txt |
Heritrix源码分析(三) 修改配置文件order.xml加快你的抓取速度(转)的更多相关文章
- Heritrix源码分析(九) Heritrix的二次抓取以及如何让Heritrix抓取你不想抓取的URL
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/644396 本博客已迁移到本人独立博客: http://www.yun5u ...
- YARN DistributedShell源码分析与修改
YARN DistributedShell源码分析与修改 YARN版本:2.6.0 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述 2 YARN Distrib ...
- Heritrix源码分析(十四) 如何让Heritrix不间断的抓取(转)
欢迎加入Heritrix群(QQ):109148319,10447185 , Lucene/Solr群(QQ) : 118972724 本博客已迁移到本人独立博客: http://www.yun5u ...
- Heritrix源码分析(十四)
近段时间在搞定Lucene的一些问题,所以Heritrix源码分析暂时告一段落.今天下午在群里有同学提到了Heritrix异常终止的问题以及让Heritrix不停的抓取(就是抓完一遍后载入种子继续抓取 ...
- 使用react全家桶制作博客后台管理系统 网站PWA升级 移动端常见问题处理 循序渐进学.Net Core Web Api开发系列【4】:前端访问WebApi [Abp 源码分析]四、模块配置 [Abp 源码分析]三、依赖注入
使用react全家桶制作博客后台管理系统 前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用react全家桶制作的博客后台管理系统 概述 该项目是基 ...
- tomcat源码分析(三)一次http请求的旅行-从Socket说起
p { margin-bottom: 0.25cm; line-height: 120% } tomcat源码分析(三)一次http请求的旅行 在http请求旅行之前,我们先来准备下我们所需要的工具. ...
- Heritrix源码分析(六) Heritrix的文件结构分析(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642618 本博客已迁移到本人独立博客: http://www.yun5u. ...
- Heritrix源码分析(五) 如何让Heritrix在Ecplise等IDE下编程启动(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/642550 本博客已迁移到本人独立博客: http://www.yun5u. ...
- Heritrix源码分析(二) 配置文件order.xml介绍(转)
本博客属原创文章,欢迎转载!转载请务必注明出处:http://guoyunsky.iteye.com/blog/613412 本博客已迁移到本人独立博客: http://www.yun5u. ...
随机推荐
- redis命令参考
http://doc.redisfans.com/ 进入redis命令行模式方式: 1.进入redis安装目录 2.运行redis-cli
- 快速幂取模 POJ 3761 bubble sort
题目传送门 /* 题意:求冒泡排序扫描k次能排好序的全排列个数 数学:这里有一个反序列表的概念,bj表示在j左边,但大于j的个数.不多说了,我也是看网上的解题报告. 详细解释:http://blog. ...
- 【PSR规范专题(5)】PSR-4 改进后的自动加载规范
本文转自: https://github.com/PizzaLiu/PHP-FIG/blob/master/PSR-4-autoloader-cn.md 关键词 "必须"(&quo ...
- QListWidget特别简单,但有两种添加item的方式
虽然特别简单,但是对于小白来说,还是有必要过一下脑子和眼睛,当然还得过手(江湖传言:眼过千变,不如手过一遍),所以记录在此: #include "tablewidgetxxx.h" ...
- CSS3:empty
:empty ---空的元素样式 <!DOCTYPE html> <html> <head lang="en"> <meta charse ...
- 使用原生JavaScript
如果你只需要针对现代浏览器,很多功能使用原生的 JavaScript 就可以实现. DOM Selectors //jQuery var ele = $("#id .class") ...
- Knight's Trip---hdu3766(马走日求最小走的步数)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3766 给你一个x ,y 求出从(0,0)位置到达需要的最小步数每次只能走日型: 下图为暴力bfs得到的 ...
- POJ3267——The Cow Lexicon(动态规划)
The Cow Lexicon DescriptionFew know that the cows have their own dictionary with W (1 ≤ W ≤ 600) wor ...
- Windows7配置GPU和Theano编程环境
可参考Windows安装Theano官方教程: http://deeplearning.net/software/theano/install_windows.html#install-windows ...
- 浅谈ES5的const以及strict mode
了解你使用的JavaScript版本是很重要的,因为不同版本的JavaScript对某些语法或者特性的支持情况是不一样的,下面就来举一些例子来说明一下.首先来看一下const关键字,学过比如Java, ...