小飯店原來(lái)只有一個(gè)廚師,切菜洗菜備料炒菜全干。
后來(lái)客人多了,廚房一個(gè)廚師忙不過(guò)來(lái),又請(qǐng)了個(gè)廚師,兩個(gè)廚師都能炒一樣的菜,兩個(gè)廚師的關(guān)系是集群。
為了讓廚師專(zhuān)心炒菜,把菜做到極致,再請(qǐng)了個(gè)配菜師負(fù)責(zé)切菜,備菜,備料 ... 廚師和配菜師的關(guān)系是分布式。
一個(gè)配菜師也忙不過(guò)來(lái)了,又請(qǐng)了個(gè)配菜師,兩個(gè)配菜師關(guān)系是集群。
一個(gè)配菜師因故請(qǐng)假了,但是其余的配菜師還是該啥就干啥,只是沒(méi)請(qǐng)假的配菜師任務(wù)均勻的加量了,但他們的任務(wù)和職責(zé)是不變的,這是集群。
集群:多個(gè)人在一起作同樣的事 。
分布式 :多個(gè)人在一起作不同的事 。
二、圖解:
以上內(nèi)容轉(zhuǎn)自:https://www.zhihu.com/question/20004877
以下內(nèi)容是個(gè)人整理的:
三、區(qū)別聯(lián)系 (其實(shí)上面的內(nèi)容應(yīng)該已經(jīng)讓你理解2者了)
1)我記得在一本講 tcp/ip 的書(shū)上有這樣一句話(huà):分布式是指 多個(gè)系統(tǒng)協(xié)同合作完成一個(gè)特定任務(wù)的系統(tǒng)。
分布式是解決中心化管理的問(wèn)題,把所有的任務(wù)疊加到一個(gè)節(jié)點(diǎn)處理,太慢了。
所以把一個(gè)大的問(wèn)題拆分為多個(gè)小的問(wèn)題,并分別解決,最終協(xié)同合作。分布式的主要工作是分解任務(wù),將職能拆解。
2) 集群主要的使用場(chǎng)景是為了分擔(dān)請(qǐng)求的壓力,也就是在幾個(gè)服務(wù)器上部署相同的應(yīng)用程序,來(lái)分擔(dān)客戶(hù)端請(qǐng)求。
當(dāng)壓力進(jìn)一步增大的時(shí)候,可能在需要存儲(chǔ)的部分,mysql 無(wú)法面對(duì)很多的寫(xiě)壓力。因?yàn)樵?mysql 做成集群之后,主要的寫(xiě)壓力還是在 master 的機(jī)器上面,其他 slave 機(jī)器無(wú)法分擔(dān)寫(xiě)壓力,從而這個(gè)時(shí)候,也就引出來(lái)分布式。
分布式的主要應(yīng)用場(chǎng)景是單臺(tái)機(jī)器已經(jīng)無(wú)法滿(mǎn)足這種性能的要求,必須要融合多個(gè)節(jié)點(diǎn),并且節(jié)點(diǎn)之間是相關(guān)之間有交互的。相當(dāng)于在寫(xiě) mysql 的時(shí)候,每個(gè)節(jié)點(diǎn)存儲(chǔ)部分?jǐn)?shù)據(jù),也就是分布式存儲(chǔ)的由來(lái)。存儲(chǔ)一些非結(jié)構(gòu)化數(shù)據(jù):靜態(tài)文件、圖片、pdf、小視頻 ... 這些也就是分布式文件系統(tǒng)的由來(lái)。
3)集群主要是簡(jiǎn)單加機(jī)器解決問(wèn)題,對(duì)于問(wèn)題本身不做任何分解;
分布式處理里必然包含任務(wù)分解與答案歸并。分布式中的某個(gè)子任務(wù)節(jié)點(diǎn),可能由一個(gè)集群來(lái)代替;集群中任一節(jié)點(diǎn),都是做一個(gè)完整的任務(wù)。
集群和分布式都是由多個(gè)節(jié)點(diǎn)組成,但是集群之間的通信協(xié)調(diào)基本不需要;而分布式各個(gè)節(jié)點(diǎn)的通信協(xié)調(diào)必不可少。
將一套系統(tǒng)拆分成不同子系統(tǒng)部署在不同服務(wù)器上(這叫分布式),
** 然后部署多個(gè)相同的子系統(tǒng)在不同的服務(wù)器上(這叫集群),部署在不同服務(wù)器上的同一個(gè)子系統(tǒng)應(yīng)做負(fù)載均衡。**
**分布式:一個(gè)業(yè)務(wù)拆分為多個(gè)子業(yè)務(wù),部署在多個(gè)服務(wù)器上 。 **
集群:同一個(gè)業(yè)務(wù),部署在多個(gè)服務(wù)器上 。