当前位置: 首页 > news >正文

石首做网站湖南省人民政府官网

石首做网站,湖南省人民政府官网,中国互联网协会是国企吗,四川建设信息网官网目录 一、扩展和收缩 二、使用高质量的哈希函数 三、使用跳跃表(skiplist)或其他数据结构 四、哈希表分片 一、扩展和收缩 Redis通过动态调整哈希表的大小来解决“数组链表”的长度问题,这涉及到两个过程:扩展(Expand)和收缩(S…

目录

一、扩展和收缩

二、使用高质量的哈希函数

三、使用跳跃表(skiplist)或其他数据结构

四、哈希表分片


一、扩展和收缩

       Redis通过动态调整哈希表的大小来解决“数组+链表”的长度问题,这涉及到两个过程:扩展(Expand)和收缩(Shrink)。

  1. 扩展:

    • 当哈希表的负载因子(load factor)超过一个阈值时,Redis会进行扩展操作。
    • 负载因子是哈希表已存储的元素数量与哈希表大小的比值。
    • 扩展操作包括分配一个新的更大的哈希表,并逐渐将旧表中的所有键值对rehash到新表中。
  2. 收缩:

    • 相对地,当负载因子低于另一个阈值时,Redis会执行收缩操作,减少哈希表的大小。
    • 这通常发生在删除大量键值对后,为了节省内存空间,Redis会将键值对rehash到一个更小的哈希表中。

   负载因子和rehash

  • 负载因子的计算:

    • 负载因子 = 哈希表中的元素数量 / 哈希表的大小
    • 当负载因子太高时,意味着发生哈希冲突的可能性增加,链表会变得较长,影响性能。
    • 当负载因子太低时,意味着内存使用不够高效。
    • 默认扩展负载因子:
      • 在没有进行BGSAVE或BGREWRITEAOF操作时,负载因子超过1时进行扩展。
      • 如果正在进行BGSAVE或BGREWRITEAOF操作,则负载因子阈值提高到5,即负载因子超过5时进行扩展。这意味着在正常情况下,当哈希表的负载因子超过1时,Redis就会触发扩展操作。但是,如果Redis正在进行磁盘写操作,如BGSAVE或BGREWRITEAOF,为了避免在磁盘IO已经很高的情况下进一步增加内存重分配的负担,它会提高扩展操作的负载因子阈值到5。这样可以在一定程度上平衡内存使用和磁盘IO之间的性能。
    • 当哈希表的负载因子小于0.1时,Redis会进行收缩操作。
  • rehash过程:

    • rehash是将所有键值对从旧的哈希表移动到新的哈希表的过程。
    • Redis使用渐进式rehash,它不是一次性完成,而是分多次进行,以避免长时间的阻塞。

   渐进式rehash

  • 渐进式rehash的实现:
    • 在rehash期间,Redis同时保持旧表和新表。
    • 每次对哈希表的操作(如添加、删除、查找)时,Redis会将旧哈希表的一部分键值对迁移到新哈希表。
    • 这样可以将rehash的计算量分散到每个操作上,避免一次性的大量计算导致服务不可用。

二、使用高质量的哈希函数

       Redis使用MurmurHash等高质量的哈希函数来减少哈希冲突。

三、使用跳跃表(skiplist)或其他数据结构

     对于有序数据集合,Redis使用跳跃表而不是链表来存储元素,跳跃表的平均和最坏情况下的时间复杂度都比链表要好。

四、哈希表分片

  在Redis集群模式下,哈希表会被分成多个分片,每个分片由不同的Redis节点管理,这样可以分散负载,减少单个链表过长的风险。

http://www.bjxfkj.com.cn/article/105096.html

相关文章:

  • 哈尔滨网站建设推荐苏州整站优化
  • 做网站怎么让字居右北京网站优化对策
  • 国内做网站建设好的怎样自己做网站
  • 电子商务设计网站建设外贸定制网站建设电话
  • 公司网站建设费用平台运营推广
  • 欧美 电台 网站模板app营销
  • 有没有好的ppt网站做参考的宣传软文是什么
  • 腾讯云服务器搭建网站搜索引擎优化什么意思
  • wordpress the termsseo引擎优化是什么
  • 怎么做那些盗号网站济南网络推广网络营销
  • 我做的网站怎么是危险网站竞价账户托管的公司有哪些
  • 网站建设属于什么资产爱站网长尾关键词挖掘查询工具
  • 移动网站设计方案网站统计分析工具
  • 课程网站建设技术营销型网站seo
  • 安徽合肥建设网seo优化网站教程百度
  • 网站引导图个人域名注册流程
  • 西宁商城网站建设公司查询网站信息
  • 请别人做网站注意事项网络营销典型案例
  • 网站虚拟空间购买网页做推广
  • 西藏自治区交通厅公路基本建设工程质量监督站网站西安seo外包行者seo
  • 高端做网站郑州seo代理外包公司
  • 网站开发整套视频北京优化seo
  • 开普网站建设公司广东深圳疫情最新
  • win7上能否做asp网站微信群发软件
  • 东莞热的建设网站sem竞价培训班
  • 衡水专业网站建设公司潮州seo建站
  • 做网站怎么加水平线各种资源都有的搜索引擎
  • 正规做网站公司seo研究协会网
  • 用什么软件做网站好处惠州seo计费
  • 全面的手机网站建设帮我搜一下长沙做网络销售