文档章节

java爬虫gecco的稳定性测试

xtuhcy
 xtuhcy
发布于 2016/03/28 11:42
字数 699
阅读 410
收藏 0

#java爬虫gecco的稳定性测试 最近对开源的java爬虫Gecco做了一个稳定性测试,测试环境:一台爬虫+web应用服务器,一台mongodb服务器。服务器配置很low,两台都是阿里云最低端的主机,1核+512内存。 ##单线程测试场景 爬虫采用单线程,测试时间3×24小时,测试期间系统无异常,jvm内存稳定。测试结果:

  • 基本信息

      Interval: 5000,
      StartTime: "2016-03-22 14:47:40",
      ThreadCount: 1,
      StarUrlCount: 8
    

单线程,共有8个初始抓取链接,每个请求抓取完成后休息5秒。

  • 爬虫监控数据

      taocan.ctrip.com
      Statistics: "{"exception":134,"serverError":0,"success":11270}"
    
      vacations.ctrip.com
      Statistics: "{"exception":61,"serverError":0,"success":17548}"
    
      huodong.ctrip.com
      Statistics: "{"exception":42,"serverError":0,"success":11814}"
    
      www.tuniu.com
      Statistics: "{"exception":4,"serverError":0,"success":228}"
    
      temai.tuniu.com
      Statistics: "{"exception":78,"serverError":0,"success":3507}"
    
      www.lvmama.com
      Statistics: "{"exception":0,"serverError":415,"success":41}"
      http://www.lvmama.com/tuangou/sale-623250 DOWNLOAD ERROR :500
      http://www.lvmama.com/tuangou/sale-612687 DOWNLOAD ERROR :400
    
  • 结果

从监控数据可以看到:

ctrip.com相关的数据抓取成功率较高,为99.99%,出现的失败都是exception,也就是类似超时之类的错误。

tuniu.com相关的数据抓取成功率也较高,为99.97%,出现的失败也是exception。

lvmama.com的成功率就十分低了,而且返回都是serverError也就是服务器500或者400错误,查看发日志发现可能对方服务器对ip做了访问限制,在成功抓取10多条后就一直报400或者500错误。

##多线程测试场景 爬虫采用3线程,测试时间2×24小时,测试期间系统无异常,jvm内存稳定。测试结果:

  • 基本信息

      Interval: 5000,
      StartTime: "2016-03-26 11:16:57",
      ThreadCount: 3,
      StarUrlCount: 8
    

3线程,共有8个初始抓取链接,每个请求抓取完成后休息5秒。

  • 爬虫监控数据

      taocan.ctrip.com
      Statistics: "{"exception":58,"serverError":0,"success":19306}"
    
      vacations.ctrip.com
      Statistics: "{"exception":51,"serverError":0,"success":31402}"
    
      huodong.ctrip.com
      Statistics: "{"exception":62,"serverError":0,"success":17807}"
    
      www.tuniu.com
      Statistics: "{"exception":2,"serverError":0,"success":466}"
    
      temai.tuniu.com
      Statistics: "{"exception":118,"serverError":0,"success":5603}"
    
      www.lvmama.com
      Statistics: "{"exception":1,"serverError":410,"success":39}"
      http://www.lvmama.com/tuangou/deal-580212 DOWNLOAD ERROR :400
    
  • 结果

从监控数据可以看到和单线程结果基本一致

##总结 从测试中可以发现,开源java爬虫Gecco对系统要求很低,体现其轻量化的特点。无论在单线程还是多线程环境下,系统均能稳定运行。对部分网站访问限制的问题,需要通过代理服务器来完成,Gecco是支持代理服务器随机选取的。

© 著作权归作者所有

共有 人打赏支持
xtuhcy

xtuhcy

粉丝 105
博文 17
码字总数 20302
作品 1
北京
后端工程师
私信 提问
加载中

评论(2)

xtuhcy
xtuhcy

引用来自“Brandon007”的评论

请问下,能不能设置爬虫只抓取一次?很多时候我需要的都是一次的数据就够了,没必要一直在请求

已经有人反映过这个问题,下一个版本会提供相关设置,如果着急使用可以github上下载最新代码编译
Brandon007
Brandon007
请问下,能不能设置爬虫只抓取一次?很多时候我需要的都是一次的数据就够了,没必要一直在请求
Gecco 1.2.5 发布,易用的轻量化爬虫

Gecco 1.2.5 发布了,DynamicGecco 实现了爬虫规则的热部署,是首个支持动态加载的java爬虫框架。 更新内容: @Gecco注解支持多个matchUrl,一个spiderbean可以同时匹配多种形式的url jd地址...

xtuhcy
2016/11/03
2.4K
5
Gecco 1.1.3 发布,易用的轻量化爬虫

Gecco 1.1.3 发布了,该版本改进内容包括: 处理jsonp的时候,分号问题修复 2.支持自定义下载重试次数定义,GeccoEngine.retry(count) 3.HttpClientDownloader支持response的Set Cookie自动存...

xtuhcy
2016/05/31
2.3K
9
Gecco 1.2.2 发布,首个支持动态加载的java爬虫框架

Gecco 1.2.2 发布了,DynamicGecco实现了爬虫规则的热部署,是首个支持动态加载的java爬虫框架。 DynamicGecco的目的是在不定义SpiderBean的情况下实现爬取规则的运行时配置。其实现原理是采...

xtuhcy
2016/07/18
1K
4
Gecco 1.2.4 发布,易用的轻量化爬虫

Gecco 1.2.4 发布了,DynamicGecco 实现了爬虫规则的热部署,是首个支持动态加载的java爬虫框架。 DynamicGecco 的目的是在不定义 SpiderBean 的情况下实现爬取规则的运行时配置。其实现原理...

xtuhcy
2016/09/12
1K
5
Gecco 1.2.3 发布,易用的轻量化爬虫

Gecco 1.2.3 发布了,DynamicGecco 实现了爬虫规则的热部署,是首个支持动态加载的java爬虫框架。 DynamicGecco 的目的是在不定义 SpiderBean 的情况下实现爬取规则的运行时配置。其实现原理...

xtuhcy
2016/08/19
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

RestClientUtil和ConfigRestClientUtil区别说明

RestClientUtil directly executes the DSL defined in the code. ConfigRestClientUtil gets the DSL defined in the configuration file by the DSL name and executes it. RestClientUtil......

bboss
35分钟前
6
0

中国龙-扬科
昨天
1
0
Linux系统设置全局的默认网络代理

更改全局配置文件/etc/profile all_proxy="all_proxy=socks://rahowviahva.ml:80/"ftp_proxy="ftp_proxy=http://rahowviahva.ml:80/"http_proxy="http_proxy=http://rahowviahva.ml:80/"......

临江仙卜算子
昨天
5
0
java框架学习日志-6(bean作用域和自动装配)

本章补充bean的作用域和自动装配 bean作用域 之前提到可以用scope来设置单例模式 <bean id="type" class="cn.dota2.tpye.Type" scope="singleton"></bean> 除此之外还有几种用法 singleton:......

白话
昨天
8
0
在PC上测试移动端网站和模拟手机浏览器的5大方法

总结很全面,保存下来以备不时之需。原文地址:https://www.cnblogs.com/coolfeng/p/4708942.html

kitty1116
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部