java爬虫gecco的稳定性测试
博客专区 > xtuhcy 的博客 > 博客详情
java爬虫gecco的稳定性测试
xtuhcy 发表于2年前
java爬虫gecco的稳定性测试
  • 发表于 2年前
  • 阅读 373
  • 收藏 0
  • 点赞 1
  • 评论 2

移动开发云端新模式探索实践 >>>   

摘要: 最近对开源的java爬虫Gecco做了一个稳定性测试,测试环境:一台爬虫+web应用服务器,一台mongodb服务器。服务器配置很low,两台都是阿里云最低端的主机,1核+512内存。

#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
粉丝 103
博文 16
码字总数 18277
作品 1
评论 (2)
Brandon007
请问下,能不能设置爬虫只抓取一次?很多时候我需要的都是一次的数据就够了,没必要一直在请求
xtuhcy

引用来自“Brandon007”的评论

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

已经有人反映过这个问题,下一个版本会提供相关设置,如果着急使用可以github上下载最新代码编译
×
xtuhcy
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: