咨詢熱線:13313028229
售后:0312-6791400
售后:0312-6791126
網址:m.kmdpfzbhw.com
地址:保定朝陽大街國貿大廈8樓808室
總鏈接庫和抓取策略說完了后,我們就要對搜索引擎最重要的一部分來進行一個仔細的講解了,換個說法,互聯網上的信息都是魚,抓魚需要有漁網和魚簍,而接下來要講的爬蟲和下載系統就對應著漁網和魚簍了,明白了SE的爬蟲和存儲機制,在我們來說,開展SEO工作就會少走很多的彎路。
爬蟲
爬蟲是根據指定URL下載網頁內容的程序或腳本,一般搜索引擎均采用分布式爬蟲架構。分布式爬蟲由數據中心、分布式抓取服務器、分布式爬蟲程序組成,數據中心由多臺抓取服務器組成,每臺抓取服務器可承載多個爬蟲程序。
常見分布式架構有主從式分布爬蟲和對等式分布爬蟲。
主從式分布爬蟲相當于只有一個URL分配服務器,將全互聯網的URL分配給若干個抓取服務器進行下載。這種架構明顯對URL分配服務器性能要求很高,面對互聯網大數據,很容易出現系統瓶頸。
對等式分布爬蟲沒有URL分配服務器,每臺抓取服務器負責特定域名集合下URL的抓取。對互聯網域名分集可通過哈希取模或一致性哈希:
哈希取模指對于n臺抓取服務器,首先對域名進行哈希計算,得到的值對n取模,得到余數即為該域名應分配的服務器編號。
例如,假設有5臺抓取服務器,對應編號為0、1、2、3、4,對域名進行哈希計算后得到的值為16,16對5取模得到余數1,即該域名下URL應交由1號服務器抓取。
然而,這種模式存在缺陷,在某臺抓取服務器宕機或由于URL增加導致服務器平均負載增加而需要增加抓取服務器時,取模的n就需要改變。這就意味著整個系統要進行重新分配,將導致資源的浪費。
一致性哈希指對域名進行哈希計算,映射為一個在0~232之間的某個數,將哈希范圍首尾相接,即認為數值0和232重合,可以將其假想成一個有序的環狀序列,每臺服務器負責某個數值段。
假設本站域名經哈希后落入2號服務器執行抓取,而2號服務器出現宕機,則繼續按順時針查找,將URL交由第一個碰到的服務器,即3號服務器,直至2號服務器恢復正常。
由于分布式爬蟲結構,故同一網站會出現很多不同IP的蜘蛛爬取記錄,這是協同抓取系統中很正常的事。部分SEOer認為不同IP段意味著不同權重的蜘蛛,其中某字段IP蜘蛛為降權蜘蛛。
抓取系統可能會對URL進行權重賦值,以便于確定抓取順序。然而,這個權重值也僅僅用于抓取系統,網頁檢索排序有更復雜的權重規則。故,降權蜘蛛一說不成立。