分享

ssbc 运行一段时间就停止的原因

 cankoa 2016-11-26

ssbc 运行一段时间后,大概半个小时,就莫名奇妙停止不爬了。 错误提示如下:

MySQL server has gone away

通过错误提示可以看出,其实是ssbc与mysql(maridb)断开连接了,导致程序异常,当然就插入不了数据了。

所以解决办法很简单,有多种解决办法:

  • 一种是写个脚本,定时重启爬虫。这种方法比较笨,效率低下,因为不知道什么时候爬虫停止了。
  • 另一种是修改下代码,当mysql断开连接时,再次重连mysql就可以拉。
  • 方法三是修改Mysql配置,将闲置时间wait_timeout设置长一点。这种方法迁移性不搞,换一次数据库就得重新设置。

附上方法二修改后的爬虫源码(simdht_worker.py)

下载链接: http://pan.baidu.com/s/1bpNt8B1 密码: 1p6t

============更新======

上面只是修复了爬虫的问题,它只是负责抓取数据。index_worker.py是用来建立索引,和simdht_worker.py问题一样,运行一会儿就停止,导致无法搜索到新数据。所以也需要修复下

下载链接: http://pan.baidu.com/s/1o8hauaI 密码: 2j7y

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多