被采集是我們一直遇到的麻煩,2013年我們就自己編寫網站防采集程序,從反采集程序的報告解讀看,這個程序起到了相當的作用,但後來因為下面幾點原因而停用:
- 自身需要使用數據庫,容易在被采集的高峰期引起擁堵;
- 對搜索引擎爬蟲使用host反查DNS有時因為網絡問題失敗,導緻誤判;
- 黑白名單機制不夠完善、靈活;
- 程序邏輯不夠完善、優化,應該采用定時方式的地方采取了每次訪問時運行,負荷過大;
- 采取了其它一些措施來進行反采集,例如:人工查看Apache日志來處理、安裝Apache的QoS模塊等。
上個月我們把以前的程序重新啟用,但阿裡雲RDS已經不支持以前的memory存儲引擎,導緻MySQL很容易擁堵,然後進行了商議,決定棄用以前的方式,而采用新的模式:
- 不再使用MySQL數據庫來存放訪問記錄,而是讀取Apache的access.log日志進行統計分析;
- 統計分析、标記的程序定時運行(例如每分鐘運行一次),屏蔽的程序對每個訪問運行;
- 添加更完善、靈活的黑白名單,包括IP名單、host名單、user-agent名單、referer名單等;
- 分步驟開發,将反假冒搜索引擎爬蟲類的先屏蔽,與時間有關的爬蟲後判斷處理。
十一以前已經做了部分工作,等一會兒另外一篇博客文章來記錄反假冒搜索引擎爬蟲的辦法。國慶假期已過,後面同事來繼續開發與時間有關的程序,後面再做記錄。
评论1
點贊 勤勞的博主
點贊 勤勞的博主