redis链表和字典

链表在redis 的常用:

列表,发布订阅,满查询,监视器等。

  1. 双向链表,通过prev和next指针来实现前后节点的访问
  2. 无环,头节点和尾节点都是以null为终点
  3. 具备带头指针和带尾指针
  4. 链表长度计数器
  5. 存放不同类型的数据

字典(关联数组,映射):

  1. 在执行set a b时候,就会创建a为键名,b为键值的关联数组。
  2. 字典的底层通过hash来实现,一个hash表里面有多个hash节点,一个hash节点中保存一对键值,通过链地址法来解决hash冲突
  3. hash使用的算法:murmurHash2
  4. 对于rehash操作:通过对负载因子的判断来决定是否进行resh,将旧hash复制到新的hash表中,然后移除旧的hash表。
  5. 为了防止数据量过大造成服务器宕机,通过引入索引计数rehashidx来实现渐进式rehash,当复制开始时候,将rehashidx设置为0,每当进行字典进行操作时候,rehashidx增一,再完成后,将其值设置为-1,表示rehash操作完成,渐进式的过程中,对数据的查找,会在旧表中查找后,如果没有,会在新表中进行查找。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值