Redis数据结构存储系统:第四章:底层实现原理

本文深入探讨了Redis的数据存储方式,包括String、List、Hash、Set和SortedSet等数据结构,并重点解析了Redis集群的哈希槽概念。哈希槽是Redis集群中用于分布式的机制,通过CRC16校验和对16384取模来决定key-value存储位置,确保添加、删除节点时的平滑操作,保持集群稳定。同时,文章介绍了如何使用RedisTemplate进行缓存操作。
摘要由CSDN通过智能技术生成

应用场景:

设置限制的优惠活动的信息;
一些及时需要更新的数据,积分排行榜;
手机验证码的时间;
限制网站访客访问频率;

Redis数据结构存储系统:第四章:底层实现原理

Redis 以什么形式存储数据? 什么是hash槽?

String(字符串) List(列表) Hash(字典) Set(集合) Sorted Set(有序集合)

Redis 集群中内置了 16384 个哈希槽,当需要在 Redis 集群中放置一个 key-value时,redis 先对 key 使用 crc16 算法算出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。Redis 集群没有使用一致性hash, 而是引入了哈希槽的概念。每个key通过CRC16校验后对16384取模来决定放置哪个槽.集群的每个节点负责一部分hash槽。这种结构很容易添加或者删除节点,并且无论是添加删除或者修改某一个节点,都不会造成集群不可用的状态。当需要增加节点时,只需要把其他节点的某些哈希槽挪到新节点就可以了;当需要移除节点时,只需要把移除节点上的哈希槽挪到其他节点就行了;

使用RedisTemplate 进行缓存

更多请见:http://www.mark-to-win.com/tutorial/51224.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值