1. 程式人生 > >分散式架構之分散式講解

分散式架構之分散式講解

1、純負載均衡形式。

在叢集前面,前置一個流量分發的元件進行流量分發,整個叢集的機器提供無差別的服務,這在常見的 web 伺服器中是最最常見的。目前比較主流的方式就是整個叢集機器上雲,根據實時的呼叫量進行雲伺服器彈性伸縮。常見的負載均衡有硬體層面的 F5、軟體層面的 nginx 等。

2、領導選舉型

整個叢集的訊息都會轉發到叢集的領導這裡,是一種 master-slavers,區別只是這個 master 是被臨時選舉出來的,一旦 master 宕機,叢集會立刻選舉出一個新的領導,繼續對外提供服務。使用領導選舉型架構的典型的應用有 ElasticSearch,zookeeper。

3、區塊鏈型

整個叢集的每一個節點都可以進行記錄,但是記錄的內容要得到整個叢集 N 個機器的認可才是合法的。典型的應用有 Bit Coin,以及 Hyperledger。

4、master-slaver型

整個叢集以某臺 master 為中樞,進行叢集的排程。互動是這樣,一般會把所有的管理型別的資料放到 master 上,而把具體的資料放到 slaver 上,實際進行呼叫的時候,client 先呼叫 master 獲取資料所存放的 server 的 資訊,再自行跟 slave 進行互動。典型的系統有 Hadoop。叢集,HBase 叢集,Redis 叢集等。

5、規則型一致性Hash

這種架構型別一般出現在資料庫分庫分表的設計中。按照規則進行分庫分表,在查詢之前使用規則引擎進行庫和表的確認,再對具體的應用進行訪問。為什麼要用一致性 Hash ?其實用什麼都可以,只是對於這類應用來說一致性 Hash 比較常見而已。

好了,至此,已經把我所知道的大部分分散式叢集的套路說完了,總結一下。

1、升級機器配置是最直接的升級方式。不到萬不得已不會使用分散式

2、分散式的核心就是業務拆分以及流量分發。