redis慢的原因

redis学习 专栏收录该内容
4 篇文章 0 订阅

redis哪些操作会慢

哈希表冲突,当key过多时,不同的key可鞥存放在同一个位置,redis在同一个位置形成一个链表进行保存,每个元素(entry)通过指针指向下一个元素
这就会有一个问题,当进行操作时就会逐一查找,所以效率降低
redis慢的解决方案
对哈希表进行rehash操作,就是增加哈希桶的数量,让每个entry分散保存,减少每个位置的entry数量(减少链表场长度)
为了提高rehash操作,redis默认使用两个全局哈希表,整个过程大致分为三步
给哈希表2分配更大的空间;
把哈希表1中的数据重新映射并拷贝到哈希表2中;
释放哈希表1的空间。
释放后的哈希表1留作下次rehash使用
这个过程设计到数据拷贝,影响效率,redis采用了渐进式rehash,逐渐复制,防止一次性复制造成线程堵塞

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值