欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis從單點(diǎn)到集群部署模式(單機(jī)模式?主從模式?哨兵模式)

 更新時(shí)間:2023年11月07日 10:42:47   作者:cartoon  
這篇文章主要為大家介紹了Redis從單點(diǎn)集群部署模式(單機(jī)模式?主從模式?哨兵模式)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

導(dǎo)讀

redis 從單點(diǎn) -> 集群總共有三個(gè)部署模式:?jiǎn)螜C(jī)模式,主從模式,哨兵模式,集群模式

單機(jī)模式

新手入門模式。單機(jī)模式意味著 Redis 是單點(diǎn)的,部署在一臺(tái)服務(wù)器,掛了就掛了,用在本地測(cè)試還可以,但是生產(chǎn)環(huán)境就算了。

優(yōu)勢(shì)

  • 部署簡(jiǎn)單
  • 省錢,一臺(tái)服務(wù)器就可以了
  • 不涉及主從復(fù)制等,數(shù)據(jù)強(qiáng)一致

劣勢(shì)

  • 單點(diǎn)意味著穩(wěn)定性基本上為 0,掛了就掛了
  • 吞吐量受限于單機(jī)資源

主從模式

當(dāng)流量越來越大,單臺(tái)機(jī)器資源不能無限增長(zhǎng),就需要水平擴(kuò)展到多個(gè)節(jié)點(diǎn),使用多個(gè)節(jié)點(diǎn)分散承接讀流量。

主從模式為主節(jié)點(diǎn)承接寫流量,從節(jié)點(diǎn)承接讀流量,二者數(shù)據(jù)一致通過主節(jié)點(diǎn)異步復(fù)制(全量復(fù)制 / 增量復(fù)制)到從節(jié)點(diǎn)。

優(yōu)勢(shì)

  • 讀流量被分?jǐn)偟蕉鄠€(gè)節(jié)點(diǎn)上,讀流量支持力度變大
  • 當(dāng)主節(jié)點(diǎn)宕機(jī)/不可用時(shí),可以手動(dòng)切換主節(jié)點(diǎn)繼續(xù)提供服務(wù)

劣勢(shì)

  • 當(dāng)主節(jié)點(diǎn)宕機(jī)/不可用時(shí)手動(dòng)切換節(jié)點(diǎn),切換過程中 redis (主節(jié)點(diǎn))不可用,并且會(huì)丟失主節(jié)點(diǎn) / 從節(jié)點(diǎn)之間未同步的數(shù)據(jù)
  • 穩(wěn)定性還是不夠,依賴手動(dòng)切換。不適用于生產(chǎn)。
  • 寫流量還是讓主節(jié)點(diǎn)獨(dú)自承受,寫流量還是靠單機(jī)資源支撐

哨兵模式

哨兵模式主要解決主從模式中手動(dòng)切換的部分,本質(zhì)上哨兵代替了人,通過 gossip 協(xié)議監(jiān)控主節(jié)點(diǎn)的健康情況。

優(yōu)勢(shì)

  • 不用手動(dòng)切換主節(jié)點(diǎn)了,切換過程中雖然 redis 也是不可用的,但是這個(gè)時(shí)間會(huì)極大的降低

劣勢(shì)

  • sentinel 與主節(jié)點(diǎn)多了一層心跳檢測(cè),有可能 sentinel 與主節(jié)點(diǎn)的網(wǎng)絡(luò)抖動(dòng)導(dǎo)致重新選舉主節(jié)點(diǎn)。
  • redis 主從節(jié)點(diǎn)吞吐因心跳檢測(cè)可能稍微降低。

集群模式

集群模式主要解決了兩個(gè)問題:寫流量水平擴(kuò)展 & 哨兵與主節(jié)點(diǎn)的網(wǎng)絡(luò)抖動(dòng)。

集群模式主要的架構(gòu)為:主節(jié)點(diǎn)平分 16384 個(gè)槽,集群支持主節(jié)點(diǎn)的動(dòng)態(tài)上線/下線(需要 rehash),主節(jié)點(diǎn)與從節(jié)點(diǎn)通過心跳關(guān)聯(lián),主節(jié)點(diǎn)失聯(lián)后從節(jié)點(diǎn)有權(quán)發(fā)起選舉成為主節(jié)點(diǎn)(raft 算法)。

優(yōu)勢(shì)

  • 自管理集群內(nèi)主從節(jié)點(diǎn)上下線,減少因外部集群網(wǎng)絡(luò)抖動(dòng)之類的發(fā)起的無效選舉
  • 數(shù)據(jù)按照 slot 存放在多個(gè)節(jié)點(diǎn),客戶端通過服務(wù)端主節(jié)點(diǎn)的重定向跳轉(zhuǎn)到具體的槽,可動(dòng)態(tài)調(diào)整數(shù)據(jù)分布
  • 減少了集群整體不可用的概率,某一主節(jié)點(diǎn)宕機(jī)只影響一部分?jǐn)?shù)據(jù)的訪問
  • 寫流量 & 數(shù)據(jù)平分到多個(gè)節(jié)點(diǎn),集群的寫請(qǐng)求瓶頸得到緩解

劣勢(shì)

  • 集群間狀態(tài)同步使用 gossip 協(xié)議,節(jié)點(diǎn)數(shù)較多存在較多的心跳網(wǎng)絡(luò)流量
  • 主節(jié)點(diǎn)的上線/下線需要進(jìn)行 rehash ,當(dāng)節(jié)點(diǎn)內(nèi)數(shù)據(jù)較多耗時(shí)較長(zhǎng)
redis 節(jié)點(diǎn)間復(fù)制有兩種:全量復(fù)制 & 部分復(fù)制

全量復(fù)制

出現(xiàn)場(chǎng)景

  • 從節(jié)點(diǎn)剛上線需要同步主節(jié)點(diǎn)的數(shù)據(jù)
  • 從節(jié)點(diǎn)切換腦裂后從節(jié)點(diǎn)偏移量與主節(jié)點(diǎn)不一致的時(shí)間點(diǎn)
  • 從節(jié)點(diǎn)偏移量不在主節(jié)點(diǎn)的復(fù)制緩沖區(qū)中

過程

  • 從節(jié)點(diǎn)向主節(jié)點(diǎn)發(fā)起同步數(shù)據(jù)的請(qǐng)求
  • 主節(jié)點(diǎn)通過 bgsave 形成當(dāng)前數(shù)據(jù)的快照,發(fā)給從節(jié)點(diǎn)
  • 從節(jié)點(diǎn)刪除歷史數(shù)據(jù),加載主節(jié)點(diǎn)發(fā)過來 RDB 文件
  • 從節(jié)點(diǎn)拉取主節(jié)點(diǎn)緩沖區(qū)數(shù)據(jù),加載到自身的內(nèi)存中,并更新當(dāng)前的偏移量

部分復(fù)制

出現(xiàn)場(chǎng)景

  • 全量復(fù)制出現(xiàn)場(chǎng)景之外的場(chǎng)景
  • 主從日常復(fù)制

過程

  • 主節(jié)點(diǎn)將命令同步到緩沖區(qū)(AOF)
  • 從節(jié)點(diǎn)拉取緩沖區(qū)數(shù)據(jù),更新到自身的節(jié)點(diǎn)中,并更新當(dāng)前的偏移量

以上就是Redis從單點(diǎn)集群部署模式(單機(jī)模式 主從模式 哨兵模式)的詳細(xì)內(nèi)容,更多關(guān)于Redis單點(diǎn)集群部署模式的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Redis數(shù)據(jù)備份與恢復(fù)方式的五種方式

    Redis數(shù)據(jù)備份與恢復(fù)方式的五種方式

    本文主要介紹了Redis數(shù)據(jù)備份與恢復(fù)方式,包含了五種方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • Redis緩存實(shí)例超詳細(xì)講解

    Redis緩存實(shí)例超詳細(xì)講解

    實(shí)際開發(fā)中緩存處理是必須的,不可能我們每次客戶端去請(qǐng)求一次服務(wù)器,服務(wù)器每次都要去數(shù)據(jù)庫中進(jìn)行查找,為什么要使用緩存?說到底是為了提高系統(tǒng)的運(yùn)行速度
    2022-12-12
  • Windows下Redis的安裝使用教程

    Windows下Redis的安裝使用教程

    這篇文章主要以圖文結(jié)合的方式為大家詳細(xì)介紹了Windows下Redis的安裝使用,Redis的出現(xiàn),很大程度補(bǔ)償了memcached這類key/value存儲(chǔ)的不足,在部分場(chǎng)合可以對(duì)關(guān)系數(shù)據(jù)庫起到很好的補(bǔ)充作用,對(duì)Redis感興趣的小伙伴們可以參考一下
    2016-05-05
  • redis中使用bloomfilter的白名單功能解決緩存穿透問題

    redis中使用bloomfilter的白名單功能解決緩存穿透問題

    本文主要介紹了redis中使用bloomfilter的白名單功能解決緩存穿透問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • redis 億級(jí)數(shù)據(jù)讀取的實(shí)現(xiàn)

    redis 億級(jí)數(shù)據(jù)讀取的實(shí)現(xiàn)

    本文主要介紹了redis 億級(jí)數(shù)據(jù)讀取的實(shí)現(xiàn),億級(jí)數(shù)據(jù)規(guī)模下實(shí)現(xiàn)高效的數(shù)據(jù)讀取成為了許多企業(yè)和開發(fā)者面臨的重大挑戰(zhàn),下面就來介紹一下,感興趣的可以了解一下
    2024-08-08
  • 你真的了解redis為什么要提供pipeline功能

    你真的了解redis為什么要提供pipeline功能

    Redis本身是一個(gè)cs模式的tcp server, client可以通過一個(gè)socket連續(xù)發(fā)起多個(gè)請(qǐng)求命令。這篇文章帶領(lǐng)大家學(xué)習(xí)redis為什么要提供pipeline功能,需要的朋友可以參考下
    2021-06-06
  • redis服務(wù)啟動(dòng)與停止方式

    redis服務(wù)啟動(dòng)與停止方式

    這篇文章主要介紹了redis服務(wù)啟動(dòng)與停止方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Redis唯一ID生成器的實(shí)現(xiàn)

    Redis唯一ID生成器的實(shí)現(xiàn)

    本文主要介紹了Redis唯一ID生成器的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Redis分片集群的實(shí)現(xiàn)

    Redis分片集群的實(shí)現(xiàn)

    Redis 分片集群是一種將 Redis數(shù)據(jù)庫分散到多個(gè)節(jié)點(diǎn)上的方式,以提供更高的性能和可伸縮性,本文主要介紹了Redis分片集群的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-04-04
  • 關(guān)于使用Redisson訂閱數(shù)問題

    關(guān)于使用Redisson訂閱數(shù)問題

    本文主要介紹了關(guān)于使用Redisson訂閱數(shù)問題,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評(píng)論