被采集是我们一直遇到的麻烦,2013年我们就自己编写网站防采集程序,从反采集程序的报告解读看,这个程序起到了相当的作用,但后来因为下面几点原因而停用:
- 自身需要使用数据库,容易在被采集的高峰期引起拥堵;
- 对搜索引擎爬虫使用host反查DNS有时因为网络问题失败,导致误判;
- 黑白名单机制不够完善、灵活;
- 程序逻辑不够完善、优化,应该采用定时方式的地方采取了每次访问时运行,负荷过大;
- 采取了其它一些措施来进行反采集,例如:人工查看Apache日志来处理、安装Apache的QoS模块等。
上个月我们把以前的程序重新启用,但阿里云RDS已经不支持以前的memory存储引擎,导致MySQL很容易拥堵,然后进行了商议,决定弃用以前的方式,而采用新的模式:
- 不再使用MySQL数据库来存放访问记录,而是读取Apache的access.log日志进行统计分析;
- 统计分析、标记的程序定时运行(例如每分钟运行一次),屏蔽的程序对每个访问运行;
- 添加更完善、灵活的黑白名单,包括IP名单、host名单、user-agent名单、referer名单等;
- 分步骤开发,将反假冒搜索引擎爬虫类的先屏蔽,与时间有关的爬虫后判断处理。
十一以前已经做了部分工作,等一会儿另外一篇博客文章来记录反假冒搜索引擎爬虫的办法。国庆假期已过,后面同事来继续开发与时间有关的程序,后面再做记录。
评论1
点赞 勤劳的博主
点赞 勤劳的博主