當前位置: 妍妍網 > 碼農

分布式和集群的概念和區別

2024-04-30碼農

分布式系統是當前比較熱門的話題,說到分布式就不得不提集群和單機,如果要學習分布式就要先對他的概念和功能有所了解

單機

單機就是把做的系統部署到一台伺服器上,所有的請求業務都由這台伺服器處理。顯然,當業務增長到一定程度的時候,伺服器的硬體會無法滿足業務需求。很多人就會想到多部署幾台伺服器,這就是集群。

集群

集群就是單機的多例項,在多個伺服器上部署多個服務,每個服務就是一個節點,部署N個節點,處理業務的能力就提升 N倍(大約),這些節點的集合就叫做集群。

優點:操作簡單,容易部署;

缺點:每個節點負載相同(耦合度高),每個具體業務的存取量可能差異很大,比如美團外賣美食外賣的存取量一定大於鮮花外賣的存取量,這就造成了資源浪費

分布式(微服務)

分布式結構就是將一個完整的系統,按照業務功能,拆分成一個個獨立的子系統,在分布式結構中,每個子系統就被稱為「服務」。這些子系統能夠獨立執行在web容器中,它們之間透過RPC方式通訊。

優點:資源利用率高

缺點:安全性低,如果一台伺服器出現問題整個系統就會崩塌

總結

所以好的設計應該是分布式和集群的結合,先分布式再集群,具體實作就是業務拆分成很多子業務,然後針對每個子業務進行集群部署,這樣每個子業務如果出了問題,整個系統完全不會受影響。

微服務的設計是為了不因為某個模組的升級和BUG影響現有的系統業務。微服務與分布式的細微差別是,微服務的套用不一定是分散在多個伺服器上,他也可以是同一個伺服器。