猜您喜歡:
Crawlab這款分布式爬蟲管理平臺,架構(gòu)包括了一個主節(jié)點(diǎn)(Master Node)和多個工作節(jié)點(diǎn)(Worker Node),以及負(fù)責(zé)通信和數(shù)據(jù)儲存的Redis和MongoDB數(shù)據(jù)庫,主節(jié)點(diǎn)負(fù)責(zé)與前端應(yīng)用進(jìn)行通信,工作節(jié)點(diǎn)的主要功能是執(zhí)行爬蟲任務(wù)和儲存抓取數(shù)據(jù)與日志,MongoDB儲存有節(jié)點(diǎn)、爬蟲、任務(wù)、定時任務(wù)等數(shù)據(jù),下面我們詳細(xì)介紹一下,一起來看看吧~
Crawlab架構(gòu):
Crawlab的架構(gòu)包括了一個主節(jié)點(diǎn)(Master Node)和多個工作節(jié)點(diǎn)(Worker Node),以及負(fù)責(zé)通信和數(shù)據(jù)儲存的Redis和MongoDB數(shù)據(jù)庫。
前端應(yīng)用向主節(jié)點(diǎn)請求數(shù)據(jù),主節(jié)點(diǎn)通過MongoDB和Redis來執(zhí)行任務(wù)派發(fā)調(diào)度以及部署,工作節(jié)點(diǎn)收到任務(wù)之后,開始執(zhí)行爬蟲任務(wù),并將任務(wù)結(jié)果儲存到MongoDB。架構(gòu)相對于v0.3.0之前的Celery版本有所精簡,去除了不必要的節(jié)點(diǎn)監(jiān)控模塊Flower,節(jié)點(diǎn)監(jiān)控主要由Redis完成。
主節(jié)點(diǎn)
主節(jié)點(diǎn)是整個Crawlab架構(gòu)的核心,屬于Crawlab的中控系統(tǒng)。主節(jié)點(diǎn)負(fù)責(zé)與前端應(yīng)用進(jìn)行通信,并通過Redis將爬蟲任務(wù)派發(fā)給工作節(jié)點(diǎn)。同時,主節(jié)點(diǎn)會同步(部署)爬蟲給工作節(jié)點(diǎn),通過Redis和MongoDB的GridFS。
工作節(jié)點(diǎn)
工作節(jié)點(diǎn)的主要功能是執(zhí)行爬蟲任務(wù)和儲存抓取數(shù)據(jù)與日志,并且通過Redis的PubSub跟主節(jié)點(diǎn)通信。通過增加工作節(jié)點(diǎn)數(shù)量,Crawlab可以做到橫向擴(kuò)展,不同的爬蟲任務(wù)可以分配到不同的節(jié)點(diǎn)上執(zhí)行。
MongoDB
MongoDB是Crawlab的運(yùn)行數(shù)據(jù)庫,儲存有節(jié)點(diǎn)、爬蟲、任務(wù)、定時任務(wù)等數(shù)據(jù),另外GridFS文件儲存方式是主節(jié)點(diǎn)儲存爬蟲文件并同步到工作節(jié)點(diǎn)的中間媒介。
Redis
Redis是非常受歡迎的Key-Value數(shù)據(jù)庫,在Crawlab中主要實現(xiàn)節(jié)點(diǎn)間數(shù)據(jù)通信的功能。例如,節(jié)點(diǎn)會將自己信息通過HSET儲存在Redis的nodes哈希列表中,主節(jié)點(diǎn)根據(jù)哈希列表來判斷在線節(jié)點(diǎn)。
前端
前端是一個基于Vue-Element-Admin的單頁應(yīng)用。其中重用了很多Element-UI的控件來支持相應(yīng)的展示。
以上就是非凡小編為大家?guī)淼腃rawlab(分布式爬蟲管理平臺)下載,想要了解更多實用工具類軟件就請多多關(guān)注非凡軟件站吧~
系統(tǒng)優(yōu)化 系統(tǒng)優(yōu)化可以盡可能的減少計算機(jī)執(zhí)行少的進(jìn)程,更改工作模式,優(yōu)化文件位置使數(shù)據(jù)讀寫更快,空出更多的系統(tǒng)資源供用戶支配,以及減少不必要的系統(tǒng)加載項及自啟動項,使系統(tǒng)運(yùn)行更加順暢。本專題系統(tǒng)優(yōu)化軟件種類繁多,歡迎選擇適合您的下載哦!