1. 程式人生 > >爬蟲技術之分散式爬蟲架構

爬蟲技術之分散式爬蟲架構

分散式爬蟲架構並不是一開始就出現的。而是一個逐步演化的過程。

最開始入手寫爬蟲的時候,我們一般在個人計算機上完成爬蟲的入門和開發,而在真實的生產環境,就不能用個人計算機來執行爬蟲程式了,而是將爬蟲程式部署在伺服器上。利用伺服器不關機的特性,爬蟲可以不間斷的24小時執行。單機爬蟲的結構如下圖。

然而,由於爬蟲在爬取資料時,爬取頻次並不能太快,即使是爬蟲在伺服器上不間斷執行,效率可能也無法滿足實際需求。這時候,就需要在多機上部署爬蟲程式,用分散式爬蟲架構,進行資料爬取。分散式爬蟲的架構一般如下所示。

採用分散式爬蟲架構後,帶來了如下幾個好處。

1,爬蟲效率提高。這一點顯而易見,之前是單機執行,現在是多機分散式執行,效率顯著提高。

2,爬蟲可靠性可用性提高。之前部署在一臺伺服器上,當伺服器出現故障或爬蟲程式出現故障時,爬蟲便不可用了。採用分散式爬蟲架構後,爬蟲任務生產者,任務佇列,爬蟲任務消費者都採用分散式架構部署,其中的某些機器出現故障,不影響整體的可用性,系統可靠性大大增強。