CLUSTER DELSLOTS slot [slot ...]
起始版本:3.0.0
時間復(fù)雜度:O(N) where N is the total number of hash slot arguments
在Redis Cluster中匙铡,每個節(jié)點(diǎn)都會知道哪些主節(jié)點(diǎn)正在負(fù)責(zé)哪些特定的哈希槽
DELSLOTS命令使一個特定的Redis Cluster節(jié)點(diǎn)去忘記一個主節(jié)點(diǎn)正在負(fù)責(zé)的哈希槽桅锄,這些哈希槽通過參數(shù)指定。
在已經(jīng)接收到DELSLOTS命令的節(jié)點(diǎn)環(huán)境中,并且因此已經(jīng)去除了指定哈希槽的關(guān)聯(lián)缚去,我們認(rèn)為這些哈希槽是未綁定的 搀继。請注意,當(dāng)一個節(jié)點(diǎn)還沒有被配置去負(fù)責(zé)他們(可以通過ADDSLOTS完成槽的分配)并且如果該節(jié)點(diǎn)沒有收到關(guān)于誰擁有這些哈希槽的消息時(節(jié)點(diǎn)通過心跳包或者更新包獲取消息),這些未綁定的哈希槽是自然而然本來就存在的殊轴。
如果一個節(jié)點(diǎn)認(rèn)為一些哈希槽是未綁定的,但是從其他節(jié)點(diǎn)接收到一個心跳包袒炉,得知這些哈希槽已經(jīng)被其他節(jié)點(diǎn)負(fù)責(zé)旁理,那么會立即確立其關(guān)聯(lián)關(guān)系。而且我磁,如果接收到一個心跳包或更新包的配置紀(jì)元比當(dāng)前節(jié)點(diǎn)的大孽文,那么會重新建立關(guān)聯(lián)。
但是夺艰,請注意:
命令只在參數(shù)指定的哈希槽已經(jīng)和某些節(jié)點(diǎn)關(guān)聯(lián)時有效芋哭。
如果同一個哈希槽被指定多次,該命令會失敗郁副。
命令執(zhí)行的副作用是减牺,因?yàn)椴辉谪?fù)責(zé)哈希槽,節(jié)點(diǎn)可能會進(jìn)入下線狀態(tài)存谎。
例如
以下命令會移除槽5000和槽5001與接收該命令節(jié)點(diǎn)的關(guān)聯(lián)
CLUSTER DELSLOTS 5000 5001
OK
Redis Cluster中的用法
命令只在集群模式下工作拔疚,并且對調(diào)試非常有用,并且當(dāng)創(chuàng)建新的集群時既荚,為了可以手動的協(xié)調(diào)集群配置稚失。當(dāng)前沒有被redis-trib使用,并且主要為了API的完整性存在恰聘。
返回值
simple-string-reply:如果命令成功執(zhí)行返回OK句各,否則返回一個錯誤。