1. 程式人生 > >真集群與偽集群的區別

真集群與偽集群的區別

處理請求 圖片 details 優勢 多項目 不可 方案 可用性 壓力

轉 https://blog.csdn.net/huaihkiss/article/details/79342745

真集群與偽集群的區別

2018年02月21日 14:18:48

現在目前個人了解的集群有幾種方式:負載均衡及反代的方式,去中心化的方式

去中心化的這種目前筆者還沒怎麽了解,負載均衡及反代的方式則是類似下圖這種

技術分享圖片

用戶請求進入負載器,負載器再根據輪詢規則分發請求至各節點上,這個就是負載均衡器的集群方案比較基礎的一個原理了

在很多工程中,有一些朋友問我:我這個集群搭在一臺機器上合不合適?

現在這裏我就稍微說下

所有集群節點搭在一臺機器上那種就是比較經常聽到的“偽集群”所有集群節點分布在多臺機器上就是“真集群”

這兩種有什麽作用與應用場景呢?

眾所周知,集群一個比較大的作用就是分散壓力分散請求,將請求分配給集群節點去處理,減輕非集群的單一應用的壓力

有些web應用容器,可能由於調優上邊的原因,會導致有並發數限制,比如說tomcat的老版本,如果沒有去修改運行模式,可能默認會采用bio的方式去處理請求,加之如果沒有去修改線程池等參數,那麽並發量可能會比較低,如果這時候做集群的話,可以提高不少並發數。

這個作用,真集群與偽集群都可以達到

那麽,既然說有真集群與偽集群,那麽真集群的優勢在哪呢?

有的時候,有可能因為資源占用,硬盤內存爆滿,網絡問題,可能會導致一臺服務器不可用,在很多項目中,很可能都會出現過類似的問題。

如果說出現了這樣的問題,那麽有可能負載均衡器分配請求的時候,如果是偽集群的話,那麽現在任意一個節點都不可用了。如果是真集群的話,那麽對於整個集群來說,只是損失了一個節點。

所以,如果只是為了分散web應用容器的並發去做的集群,那麽可以選用偽集群,如果要保證節點可用性的情況下,建議還是用真集群

真集群與偽集群的區別