在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>C/C++語言編程>

Redis Cluster的基本原理及實現細節

大小:0.7 MB 人氣: 2017-09-28 需要積分:2

  Redis Cluster的基本原理和架構

  Redis Cluster是分布式Redis的實現。隨著Redis版本的更替,以及各種已知bug的fixed,在穩定性和高可用性上有了很大的提升和進步,越來越多的企業將Redis Cluster實際應用到線上業務中,通過從社區獲取到反饋社區的迭代,為Redis Cluster成為一個可靠的企業級開源產品,在簡化業務架構和業務邏輯方面都起著積極重要的作用。下面從Redis Cluster的基本原理為起點開啟Redis Cluster在業界的分析與思考之旅。

  基本原理

  Redis Cluster的基本原理可以從數據分片、數據遷移、集群通訊、故障檢測以及故障轉移等方面進行了解,Cluster相關的代碼也不是很多,注釋也很詳細,可自行查看,地址是:https://github.com/antirez/redis/blob/unstable/src/cluster.c。這里由于篇幅的原因,主要從數據分片和數據遷移兩方面進行詳細介紹:

  數據分片

  Redis Cluster在設計中沒有使用一致性哈希(Consistency Hashing),而是使用數據分片(Sharding)引入哈希槽(hash slot)來實現;一個 Redis Cluster包含16384(0~16383)個哈希槽,存儲在Redis Cluster中的所有鍵都會被映射到這些slot中,集群中的每個鍵都屬于這16384個哈希槽中的一個,集群使用公式slot=CRC16(key)/16384來計算key屬于哪個槽,其中CRC16(key)語句用于計算key的CRC16 校驗和。

  集群中的每個主節點(Master)都負責處理16384個哈希槽中的一部分,當集群處于穩定狀態時,每個哈希槽都只由一個主節點進行處理,每個主節點可以有一個到N個從節點(Slave),當主節點出現宕機或網絡斷線等不可用時,從節點能自動提升為主節點進行處理。

  如圖1,ClusterNode數據結構中的slots和numslots屬性記錄了節點負責處理哪些槽。其中,slot屬性是一個二進制位數組(bitarray),其長度為16384/8=2048 Byte,共包含16384個二進制位。集群中的Master節點用bit(0和1)來標識對于某個槽是否擁有。比如,對于編號為1的槽,Master只要判斷序列第二位(索引從0開始)的值是不是1即可,時間復雜度為O(1)。

  Redis Cluster的基本原理及實現細節

  圖1 ClusterNode數據結構

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

Redis Cluster的基本原理及實現細節下載

相關電子資料下載

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 亚洲资源最新版在线观看 | 黄频网| 三级视频网 | 真人实干一级毛片aa免费 | 欧美 亚洲 国产 精品有声 | 狠狠色婷婷狠狠狠亚洲综合 | 夜夜爽毛片 | 色综合久久网女同蕾丝边 | 免费人成在线观看网站品爱网 | 夜夜艹天天干 | 免费性网站 | 国产成人精品午夜二三区 | 免费国产综合视频在线看 | 狠狠干b| 婷婷六月在线 | 福利午夜在线 | 羞涩妩媚玉腿呻吟嗯啊销魂迎合 | 全免费午夜一级毛片真人 | 欧美激情 在线 | 午夜国产精品福利在线观看 | 久久鲁视频| 国产免费高清视频在线观看不卡 | 国产v精品成人免费视频400条 | 香蕉视频一级 | 激情com| 6080午夜| 日本特黄在线观看免费 | 日本高清中文字幕在线观穿线视频 | 手机看片久久青草福利盒子 | 欧美日韩一区二区三区视频 | 曰本裸色私人影院噜噜噜影院 | 性欧美bbbbbb动漫 | 五月天婷婷激情 | 天天干免费视频 | 免费在线黄视频 | 国产精品成人aaaaa网站 | 午夜欧美性视频在线播放 | 91视频观看| 欧美生活性色 | 理论免费 | 黄黄的网站在线观看 |