DCS Redis的(de)集(ji)群(qun)實例有兩(liang)種版(ban)本可(ke)(ke)供選擇,一種是基于(yu)LVS+Proxy的(de)高可(ke)(ke)用集(ji)群(qun)版(ban)本(以下簡稱為Proxy版(ban)Redis集(ji)群(qun)),另(ling)一種是原生Cluster的(de)集(ji)群(qun)版(ban)本。Proxy版(ban)集(ji)群(qun)兼(jian)容(rong)開(kai)源(yuan)Redis 3.0,Cluster版(ban)本兼(jian)容(rong)開(kai)源(yuan)Redis的(de)4.0、5.0及6.0。
Redis4.0、Redis5.0、Redis6.0 Cluster集群實例
Cluster版Redis集群兼(jian)容開源(yuan)Redis的(de)Cluster,基(ji)于smart client和無中(zhong)心(xin)的(de)設(she)計(ji)方案,對服務(wu)器進行分片。
Cluster版Redis集群每(mei)種實例規格對應的分(fen)片數,如(ru)下表(biao)所示(shi)。
每個分片的大小=實例規格/分片數 ,例如,集(ji)(ji)群(qun)規格為(wei)48GB的(de)實例,分片數(shu)為(wei)6,則每個集(ji)(ji)群(qun)分片的(de)大小為(wei)48G/6=8G。
Cluster集群實例(li)規格(ge)和分片數(shu)的對應關系
| 集群版規格 | 分片數 |
|---|---|
| 4GB/8GB/16GB/24GB/32GB | 3 |
| 48GB | 6 |
| 64GB | 8 |
| 96GB | 12 |
| 128GB | 16 |
| 192GB | 24 |
| 256GB | 32 |
| 384GB | 48 |
| 512GB | 64 |
| 768GB | 96 |
| 1024GB | 128 |
- 無中心架構
Redis Cluster的任(ren)意節(jie)點(dian)都(dou)可以(yi)接收(shou)請(qing)(qing)求,但節(jie)點(dian)會將請(qing)(qing)求發送到正確的節(jie)點(dian)上執(zhi)行,同時,每一個節(jie)點(dian)也是(shi)主(zhu)(zhu)從結(jie)構,默認包含一個主(zhu)(zhu)節(jie)點(dian)和一個從節(jie)點(dian),由Redis Cluster根據(ju)選舉算法決(jue)定節(jie)點(dian)主(zhu)(zhu)從屬性。
Redis Cluster無中心架(jia)構

- 數據預分片
Redis Cluster會預先分配(pei)16384個(ge)slot,每個(ge)Redis的server存(cun)儲所有slot與redis server的映射關系。key存(cun)儲在哪個(ge)slot中,由Crc16(key) mod 16384的值(zhi)決定。如(ru)下圖所示:
Redis Cluster預(yu)分片示意圖(tu)
