爬蟲(chóng)技術(shù)之分布式爬蟲(chóng)架構(gòu)的講解
分布式爬蟲(chóng)架構(gòu)并不是一開(kāi)始就出現(xiàn)的。而是一個(gè)逐步演化的過(guò)程。
最開(kāi)始入手寫(xiě)爬蟲(chóng)的時(shí)候,我們一般在個(gè)人計(jì)算機(jī)上完成爬蟲(chóng)的入門(mén)和開(kāi)發(fā),而在真實(shí)的生產(chǎn)環(huán)境,就不能用個(gè)人計(jì)算機(jī)來(lái)運(yùn)行爬蟲(chóng)程序了,而是將爬蟲(chóng)程序部署在服務(wù)器上。利用服務(wù)器不關(guān)機(jī)的特性,爬蟲(chóng)可以不間斷的24小時(shí)運(yùn)行。單機(jī)爬蟲(chóng)的結(jié)構(gòu)如下圖。
然而,由于爬蟲(chóng)在爬取數(shù)據(jù)時(shí),爬取頻次并不能太快,即使是爬蟲(chóng)在服務(wù)器上不間斷運(yùn)行,效率可能也無(wú)法滿(mǎn)足實(shí)際需求。這時(shí)候,就需要在多機(jī)上部署爬蟲(chóng)程序,用分布式爬蟲(chóng)架構(gòu),進(jìn)行數(shù)據(jù)爬取。分布式爬蟲(chóng)的架構(gòu)一般如下所示。
采用分布式爬蟲(chóng)架構(gòu)后,帶來(lái)了如下幾個(gè)好處。
- 1,爬蟲(chóng)效率提高。這一點(diǎn)顯而易見(jiàn),之前是單機(jī)運(yùn)行,現(xiàn)在是多機(jī)分布式運(yùn)行,效率顯著提高。
- 2,爬蟲(chóng)可靠性可用性提高。之前部署在一臺(tái)服務(wù)器上,當(dāng)服務(wù)器出現(xiàn)故障或爬蟲(chóng)程序出現(xiàn)故障時(shí),爬蟲(chóng)便不可用了。采用分布式爬蟲(chóng)架構(gòu)后,爬蟲(chóng)任務(wù)生產(chǎn)者,任務(wù)隊(duì)列,爬蟲(chóng)任務(wù)消費(fèi)者都采用分布式架構(gòu)部署,其中的某些機(jī)器出現(xiàn)故障,不影響整體的可用性,系統(tǒng)可靠性大大增強(qiáng)。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- 使用Docker Swarm搭建分布式爬蟲(chóng)集群的方法示例
- Centos7.3 RabbitMQ分布式集群搭建示例
- PHP實(shí)現(xiàn)分布式memcache設(shè)置web集群session同步的方法
- Linux下Kafka分布式集群安裝教程
- Linux下ZooKeeper分布式集群安裝教程
- Linux集群/分布式環(huán)境下session處理的五種策略詳解
- 詳解CentOS 6.5搭建Redis3.2.8單機(jī)分布式集群
- 詳解使用docker搭建hadoop分布式集群
- java 分布式與集群的區(qū)別和聯(lián)系
- Hadoop單機(jī)版和全分布式(集群)安裝
- 分布式和集群的概述講解
相關(guān)文章
Redis序列化轉(zhuǎn)換類(lèi)型報(bào)錯(cuò)的解決
本文主要介紹了Redis序列化轉(zhuǎn)換類(lèi)型報(bào)錯(cuò)的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04redis分布式鎖優(yōu)化的實(shí)現(xiàn)
本文主要介紹了redis分布式鎖優(yōu)化的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09Redis報(bào)錯(cuò)NOAUTH?Authentication?required簡(jiǎn)單解決辦法
這篇文章主要給大家介紹了關(guān)于Redis報(bào)錯(cuò)NOAUTH?Authentication?required的簡(jiǎn)單解決辦法,Redis無(wú)密碼報(bào)錯(cuò)NOAUTH Authentication required的原因是客戶(hù)端訪問(wèn)Redis時(shí)需要提供密碼,但是沒(méi)有提供或提供的密碼不正確,需要的朋友可以參考下2024-05-05Redis中實(shí)現(xiàn)查找某個(gè)值的范圍
這篇文章主要介紹了Redis中實(shí)現(xiàn)查找某個(gè)值的范圍,本文的題引來(lái)了Redis作者Salvatore Sanfilippo(@antirez)的回答,比較經(jīng)典,需要的朋友可以參考下2015-06-06Redis的六種底層數(shù)據(jù)結(jié)構(gòu)(小結(jié))
本文主要介紹了Redis的六種底層數(shù)據(jù)結(jié)構(gòu),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01詳談redis優(yōu)化配置和redis.conf說(shuō)明(推薦)
下面小編就為大家?guī)?lái)一篇詳談redis優(yōu)化配置和redis.conf說(shuō)明(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03