redis集羣的搭建需要的服務器個數分析?

先上圖混個眼熟:


各個redis服務器之間的連接採用的是ping-pong機制使每個服務器間互相通信,檢測一個節點是否掛掉採用的是節點間的相互檢測(相互投票),當一個節點被該集羣中超過半數的節點檢測出有問題,即認爲該節點掛掉,所以要想投票過半,節點個數至少爲3個(當然兩個節點亦可以搭建集羣,這樣高可用性不強,不能採取投票的方式檢測節點是否正常工作)【附】。ok那麼爲什麼上圖有6個節點,因爲一般服務器爲了數據安全都會採用一個備用服務器(slave),備用個數至少爲一個,所以一共需要6個服務器即使3主3備用。

附(兩節點集羣檢測自身是否掛掉的方法):

       當集羣中只有兩個節點時投票1:1無法通過投票的方式檢測,這時候可以藉助另外的參考節點,如ping網關(可以是一個節點),可以和測試點ping通,但不可以和對方通,說明對方節點有問題,或本節點有問題;還有就是通過仲裁設備,如仲裁磁盤,每個節點都間隔一定時間不停往磁盤寫數據,若監測到對方不再寫入的時候,可能對方節點出故障。

        

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章