開(kāi)啟集群模式配置: cluster-enabled yes
1.數(shù)據(jù)存儲(chǔ)的區(qū)別:
redis單節(jié)點(diǎn):
redis服務(wù)器默認(rèn)會(huì)創(chuàng)建16個(gè)數(shù)據(jù)庫(kù)
默認(rèn)情況下源譬,redis客戶端的目標(biāo)數(shù)據(jù)庫(kù)為0號(hào)凿歼,但可以通過(guò)執(zhí)行select 命令來(lái)切換目標(biāo)數(shù)據(jù)
127.0.0.1:6380> set msg 123
OK
127.0.0.1:6380> get msg
"123"
127.0.0.1:6380>
127.0.0.1:6380> select 2
OK
127.0.0.1:6380[2]> get msg
(nil)
127.0.0.1:6380[2]>
127.0.0.1:6380[2]> exit
redis集群模式
redis集群通過(guò)分片的方式來(lái)保存數(shù)據(jù)庫(kù)中的鍵值對(duì)
集群的整個(gè)數(shù)據(jù)庫(kù)被分為16384個(gè)slot
節(jié)點(diǎn)使用以下算法計(jì)算給定的key屬于哪個(gè)slot:CRC16(key) & 16383
其中 CRC16(key) 用于計(jì)算鍵key的CRC-16校驗(yàn)和,而& 16383 語(yǔ)句則用于計(jì)算出一個(gè)介于0至16383之間的整數(shù)作為鍵key的slot號(hào)。
使用 cluster keyslot keyname 可以查看鍵屬于哪個(gè)slot
127.0.0.1:6380>
127.0.0.1:6380> select 2
(error) ERR SELECT is not allowed in cluster mode
127.0.0.1:6380>
以上可知:集群模式的節(jié)點(diǎn)只能使用0號(hào)數(shù)據(jù)庫(kù),且沒(méi)有select命令
單機(jī)模式下也沒(méi)有slot的概念