微服务 教程
1085个小节阅读:196.6k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Redis Cluster将所有数据划分为16384个slots(槽位),每个节点负责其中一部分槽位。槽位的信息存储于每个节点中。只有master节点会被分配槽位,slave节点不会分配槽位。
槽位定位算法: k1 = 127001
Cluster 默认会对 key 值使用 crc16 算法进行 hash 得到一个整数值,然后用这个整数值对 16384 进行取模来得到具体槽位。
HASH_SLOT = CRC16(key) % 16384
xxxxxxxxxx
set k1 v1
注意:
根据k1计算出的槽值进行切换节点,并存入数据。不在一个slot下的键值,是不能使用mget、mset等多建操作。
可以通过{}来定义组的概念,从而是key中{}内相同内容的键值对放到同一个slot中。
xxxxxxxxxx
mset k1{test} v1 k2{test} v2 k3{test} v3
xxxxxxxxxx
192.168.66.103:8001> cluster nodes
xxxxxxxxxx
lsof -i:8001
kill -9 pid
1. Redis Cluster模式默认会对key值使用__算法进行hash得到一个整数值,然后用这个整数值对16384 进行取模来得到具体槽位。
A crc-8
B crc-16
C md5
D des
1=>B