最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解redis集群選舉機(jī)制

 更新時(shí)間:2021年03月29日 14:26:42   作者:祈雨v  
這篇文章主要介紹了詳解redis集群選舉機(jī)制,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

概要

當(dāng)redis集群的主節(jié)點(diǎn)故障時(shí),Sentinel集群將從剩余的從節(jié)點(diǎn)中選舉一個(gè)新的主節(jié)點(diǎn),有以下步驟:

  • 故障節(jié)點(diǎn)主觀下線
  • 故障節(jié)點(diǎn)客觀下線
  • Sentinel集群選舉Leader
  • Sentinel Leader決定新主節(jié)點(diǎn)

選舉過程

1、主觀下線

Sentinel集群的每一個(gè)Sentinel節(jié)點(diǎn)會(huì)定時(shí)對(duì)redis集群的所有節(jié)點(diǎn)發(fā)心跳包檢測(cè)節(jié)點(diǎn)是否正常。如果一個(gè)節(jié)點(diǎn)在down-after-milliseconds時(shí)間內(nèi)沒有回復(fù)Sentinel節(jié)點(diǎn)的心跳包,則該redis節(jié)點(diǎn)被該Sentinel節(jié)點(diǎn)主觀下線。

2、客觀下線

當(dāng)節(jié)點(diǎn)被一個(gè)Sentinel節(jié)點(diǎn)記為主觀下線時(shí),并不意味著該節(jié)點(diǎn)肯定故障了,還需要Sentinel集群的其他Sentinel節(jié)點(diǎn)共同判斷為主觀下線才行。

該Sentinel節(jié)點(diǎn)會(huì)詢問其他Sentinel節(jié)點(diǎn),如果Sentinel集群中超過quorum數(shù)量的Sentinel節(jié)點(diǎn)認(rèn)為該redis節(jié)點(diǎn)主觀下線,則該redis客觀下線。

如果客觀下線的redis節(jié)點(diǎn)是從節(jié)點(diǎn)或者是Sentinel節(jié)點(diǎn),則操作到此為止,沒有后續(xù)的操作了;如果客觀下線的redis節(jié)點(diǎn)為主節(jié)點(diǎn),則開始故障轉(zhuǎn)移,從從節(jié)點(diǎn)中選舉一個(gè)節(jié)點(diǎn)升級(jí)為主節(jié)點(diǎn)。

3、Sentinel集群選舉Leader

如果需要從redis集群選舉一個(gè)節(jié)點(diǎn)為主節(jié)點(diǎn),首先需要從Sentinel集群中選舉一個(gè)Sentinel節(jié)點(diǎn)作為L(zhǎng)eader。

每一個(gè)Sentinel節(jié)點(diǎn)都可以成為L(zhǎng)eader,當(dāng)一個(gè)Sentinel節(jié)點(diǎn)確認(rèn)redis集群的主節(jié)點(diǎn)主觀下線后,會(huì)請(qǐng)求其他Sentinel節(jié)點(diǎn)要求將自己選舉為L(zhǎng)eader。被請(qǐng)求的Sentinel節(jié)點(diǎn)如果沒有同意過其他Sentinel節(jié)點(diǎn)的選舉請(qǐng)求,則同意該請(qǐng)求(選舉票數(shù)+1),否則不同意。

如果一個(gè)Sentinel節(jié)點(diǎn)獲得的選舉票數(shù)達(dá)到Leader最低票數(shù)(quorumSentinel節(jié)點(diǎn)數(shù)/2+1的最大值),則該Sentinel節(jié)點(diǎn)選舉為L(zhǎng)eader;否則重新進(jìn)行選舉。

在這里插入圖片描述

4、Sentinel Leader決定新主節(jié)點(diǎn)

當(dāng)Sentinel集群選舉出Sentinel Leader后,由Sentinel Leader從redis從節(jié)點(diǎn)中選擇一個(gè)redis節(jié)點(diǎn)作為主節(jié)點(diǎn):

  • 過濾故障的節(jié)點(diǎn)
  • 選擇優(yōu)先級(jí)slave-priority最大的從節(jié)點(diǎn)作為主節(jié)點(diǎn),如不存在則繼續(xù)
  • 選擇復(fù)制偏移量(數(shù)據(jù)寫入量的字節(jié),記錄寫了多少數(shù)據(jù)。主服務(wù)器會(huì)把偏移量同步給從服務(wù)器,當(dāng)主從的偏移量一致,則數(shù)據(jù)是完全同步)最大的從節(jié)點(diǎn)作為主節(jié)點(diǎn),如不存在則繼續(xù)
  • 選擇runid(redis每次啟動(dòng)的時(shí)候生成隨機(jī)的runid作為redis的標(biāo)識(shí))最小的從節(jié)點(diǎn)作為主節(jié)點(diǎn)

為什么Sentinel集群至少3節(jié)點(diǎn)

一個(gè)Sentinel節(jié)選舉成為L(zhǎng)eader的最低票數(shù)為quorumSentinel節(jié)點(diǎn)數(shù)/2+1的最大值,如果Sentinel集群只有2個(gè)Sentinel節(jié)點(diǎn),則

Sentinel節(jié)點(diǎn)數(shù)/2 + 1
= 2/2 + 1
= 2

即Leader最低票數(shù)至少為2,當(dāng)該Sentinel集群中由一個(gè)Sentinel節(jié)點(diǎn)故障后,僅剩的一個(gè)Sentinel節(jié)點(diǎn)是永遠(yuǎn)無法成為L(zhǎng)eader。

也可以由此公式可以推導(dǎo)出,Sentinel集群允許1個(gè)Sentinel節(jié)點(diǎn)故障則需要3個(gè)節(jié)點(diǎn)的集群;允許2個(gè)節(jié)點(diǎn)故障則需要5個(gè)節(jié)點(diǎn)集群。

到此這篇關(guān)于詳解redis集群選舉機(jī)制的文章就介紹到這了,更多相關(guān)redis集群選舉機(jī)制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 聊聊redis-dump工具安裝問題

    聊聊redis-dump工具安裝問題

    這篇文章主要介紹了redis-dump工具安裝問題,由于安裝redis-dump工具需要使用rvm?和gem工具所以要提前安裝,詳細(xì)的安裝過程本文給大家提到過,需要的朋友可以參考下
    2022-01-01
  • Redis如何使用Pipeline實(shí)現(xiàn)批處理操作

    Redis如何使用Pipeline實(shí)現(xiàn)批處理操作

    Redis?Pipeline?是一種優(yōu)化?Redis?操作的機(jī)制,通過將多個(gè)命令打包發(fā)送到?Redis?服務(wù)器,減少客戶端與服務(wù)器之間的網(wǎng)絡(luò)往返時(shí)間,本文主要來聊聊Redis如何使用Pipeline實(shí)現(xiàn)批處理操作,需要的可以了解下
    2025-02-02
  • Redis 過期鍵刪除策略的實(shí)現(xiàn)示例

    Redis 過期鍵刪除策略的實(shí)現(xiàn)示例

    Redis的過期數(shù)據(jù)刪除策略主要有三種,包括定時(shí)刪除、惰性刪除和定期刪除,本文主要介紹了Redis 過期鍵刪除策略的實(shí)現(xiàn)示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • Linux下redis5.0.5的安裝過程與配置方法

    Linux下redis5.0.5的安裝過程與配置方法

    這篇文章主要介紹了Linux下redis5.0.5的安裝過程與配置方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 利用redis實(shí)現(xiàn)排行榜的小秘訣

    利用redis實(shí)現(xiàn)排行榜的小秘訣

    這篇文章主要給大家介紹了關(guān)于如何利用redis實(shí)現(xiàn)排行榜的小秘訣,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用redis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Redis?List列表相關(guān)命令的用法詳解

    Redis?List列表相關(guān)命令的用法詳解

    這篇文章主要為大家詳細(xì)介紹了Redis中List列表相關(guān)命令的用法,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • 利用yum安裝Redis的方法詳解

    利用yum安裝Redis的方法詳解

    Redis是一個(gè)開源的使用ANSI C語(yǔ)言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語(yǔ)言的API。從2010年3月15日起,Redis的開發(fā)工作由VMware主持。這篇文章主要介紹的是利用yum安裝Redis的方法,有需要的朋友們可以參考借鑒,下面來一起看看吧
    2016-11-11
  • Redis?的內(nèi)存淘汰策略和過期刪除策略的區(qū)別

    Redis?的內(nèi)存淘汰策略和過期刪除策略的區(qū)別

    這篇文章主要介紹了Redis?的內(nèi)存淘汰策略和過期刪除策略的區(qū)別,Redis?是可以對(duì)?key?設(shè)置過期時(shí)間的,因此需要有相應(yīng)的機(jī)制將已過期的鍵值對(duì)刪除,而做這個(gè)工作的就是過期鍵值刪除策略
    2022-07-07
  • redis?lua限流算法實(shí)現(xiàn)示例

    redis?lua限流算法實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了redis?lua限流算法實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • redis配置文件中常用配置詳解

    redis配置文件中常用配置詳解

    這篇文章主要介紹了redis配置文件中常用配置詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評(píng)論

乌兰浩特市| 安徽省| 南通市| 镇平县| 南宫市| 澄迈县| 泸州市| 敦化市| 陆河县| 翁源县| 禹州市| 海城市| 东乡| 南投市| 夏邑县| 固镇县| 施秉县| 淮安市| 尉犁县| 邻水| 太白县| 肇东市| 高州市| 林周县| 西华县| 九龙坡区| 商河县| 平凉市| 宁津县| 定安县| 甘洛县| 南丹县| 郸城县| 嘉善县| 将乐县| 东海县| 铁岭市| 竹北市| 阿图什市| 三都| 宁武县|