生活随笔
收集整理的這篇文章主要介紹了
Celery理解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
celery理解:
- celery是一個分布式系統(tǒng),多用于處理實時異步問題
- celery由三部分組成:任務(wù)生產(chǎn)者,中間調(diào)度隊列,任務(wù)的處理者
- 任務(wù)生產(chǎn)者會生成任務(wù),把任務(wù)放到隊列中,隊列會根據(jù)不同的配置要求把任務(wù)分配個處理者處理。
- 任務(wù)生產(chǎn)者并發(fā)的存在于分布系統(tǒng)節(jié)點中。
- 分布式系統(tǒng)設(shè)計的兩大重要內(nèi)容:"性能”和“容錯性”;性能的指標是絕對的,容錯性的指標是相對的。
- 分布系統(tǒng)又分為中心化和去中心化
- 中心化就是會有一個領(lǐng)導下面有幾個員工,領(lǐng)導會給員工分配任務(wù),如果員工任務(wù)做完會給他分配新的任務(wù);如果有一個員工宕機,就會把這個員工剔除掉,把他的任務(wù)分配給其他的員工。
- 中心化的弊端就是如果領(lǐng)導宕機,整個集群就會崩潰,為了解決這個問題,大多數(shù)中心化系統(tǒng)都主備兩個領(lǐng)導的方案,以提高系統(tǒng)的可用性
- 去中心化就是沒有領(lǐng)導,每個節(jié)點都一樣,但是這樣就會導致難以實現(xiàn)節(jié)點與節(jié)點之間的通信;
- 去中心化設(shè)計中最難的一個問題“腦裂”問題,這種情況的發(fā)生率很低,但是后果很嚴重;腦裂是指一個集群因為網(wǎng)絡(luò)的故障被分為兩個無法通信的集群,此時兩個集群各自工作,則可能會產(chǎn)生嚴重的數(shù)據(jù)沖突問題。一般遇到腦裂問題,規(guī)模較小的集群就會自殺。
- 實際上完全意義上的去中心化的分布系統(tǒng)并不多見,一般都是采用外部去中心化機制,這種架構(gòu)的集群中的領(lǐng)導是動態(tài)選擇出來的,如果領(lǐng)導宕機的話,就會在成員中自行選舉新的領(lǐng)導出來。
總結(jié)
以上是生活随笔為你收集整理的Celery理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。