分布式可繁也可以簡,最簡單的分布式就是大家最常用的,在負載均衡伺服器後加一堆web伺服器,然後在上面搞乙個快取伺服器來儲存臨時狀態,後面共享乙個資料庫,其實很多號稱分布式專家的人也就停留於此,大致結構如下圖所示:
這種環境下真正進行分布式的只是web server而已,並且web server之間沒有任何聯絡,所以結構和實現都非常簡單。
有些情況下,對分布式的需求就沒這麼簡單,在每個環節上都有分布式的需求,比如load balance、db、cache和檔案等等,並且當分布式節點之間有關聯時,還得考慮之間的通訊,另外,節點非常多的時候,得有監控和管理來支撐。這樣看起來,分布式是乙個非常龐大的體系,只不過你可以根據具體需求進行適當地裁剪。按照最完備的分布式體系來看,可以由以下模組組成:
分布式任務處理服務:負責具體的業務邏輯處理
分布式節點註冊和查詢:負責管理所有分布式節點的命名和物理資訊的註冊與查詢,是節點之間聯絡的橋梁
分布式db:分布式結構化資料訪問
分布式cache:分布式快取資料(非持久化)訪問
分布式檔案:分布式檔案訪問
網路通訊:節點之間的網路資料通訊
監控管理:蒐集、監控和診斷所有節點執行狀態
分布式程式語言:用於分布式環境下的專有程式語言,比如elang、scala
因此,若要深入研究雲計算和分布式,就得深入研究以上領域,而這些領域每一塊的水都很深,都需要很底層的知識和技術來支撐,所以說,對於想提公升技術的開發者來說,以分布式來作為切入點是非常好的,可以以此為線索,探索計算機世界的各個角落。
集群是個物理形態,分布式是個工作方式。
只要是一堆機器,就可以叫集群,他們是不是一起協作著幹活,這個誰也不知道;乙個程式或系統,只要執行在不同的機器上,就可以叫分布式,嗯,c/s架構也可以叫分布式。
集群一般是物理集中、統一管理的,而分布式系統則不強調這一點。
所以,集群可能執行著乙個或多個分布式系統,也可能根本沒有執行分布式系統;分布式系統可能執行在乙個集群上,也可能執行在不屬於乙個集群的多台(2臺也算多台)機器上。
布式是相對中心化而來,強調的是任務在多個物理隔離的節點上進行。中心化帶來的主要問題是可靠性,若中心節點宕機則整個系統不可用,分布式除了解決部分中心化問題,也傾向於分散負載,但分布式會帶來很多的其他問題,最主要的就是一致性。
集群就是邏輯上處理同一任務的機器集合,可以屬於同一機房,也可分屬不同的機房。分布式這個概念可以執行在某個集群裡面,某個集群也可作為分布式概念的乙個節點。
一句話,就是:「分頭做事」與「一堆人」的區別
集群一般被分為三種型別,高可用集群如rhcs、lifekeeper等,負載均衡集群如lvs等、高效能計算集群;分布式應該是高效能計算集群範疇內。
分布式:不同的業務模組部署在不同的伺服器上或者同乙個業務模組分拆多個子業務,部署在不同的伺服器上,解決高併發的問題
集群:同乙個業務部署在多台機器上,提高系統可用性
小飯店原來只有乙個廚師,切菜洗菜備料炒菜全乾。後來客人多了,廚房乙個廚師忙不過來,又請了個廚師,兩個廚師都能炒一樣的菜,這兩個廚師的關係是集群。為了讓廚師專心炒菜,把菜做到極致,又請了個配菜師負責切菜,備菜,備料,廚師和配菜師的關係是分布式,乙個配菜師也忙不過來了,又請了個配菜師,兩個配菜師關係是集群
分布式和集群的區別
第一部分 分布式 1 最簡單的分布式就是大家最常用的,在負載均衡伺服器後加一堆web伺服器,然後在上面搞乙個快取伺服器來儲存臨時狀態,後面共享乙個 資料庫,其實很多號稱分布式專家的人也就停留於此,大致結構如下圖所示 這種環境下真正進行分布式的只是web server而已,並且web server之間...
分布式和集群的區別
分布式是個工作方式,乙個業務分拆多個子業務,部署在多個伺服器上,不同的伺服器節點完成不同的任務 分布式系統可能執行在乙個集群上,也可能執行在不屬於乙個集群的多台 2臺也算多台 機器上。集群是個物理形態,只要是一堆機器,物理集中 統一管理,就可以叫集群,他們是不是一起協作著幹活,這個誰也不知道 同乙個...
分布式 和 集群 的區別
分布式 distributed 是指在多台不同的伺服器中部署不同的服務模組,通過遠端呼叫協同工作,對外提供服務。集群 cluster 是指在多台不同的伺服器中部署相同應用或服務模組,構成乙個集群,通過負載均衡裝置對外提供服務。我和朋友來到一家小飯店,開始點菜 紅燒魚 糖醋排骨 酸辣土豆絲,好了就這麼...