当前位置:首页 > 内存 > 正文

内存碎片化是什么意思

  • 内存
  • 2024-07-17 08:18:28
  • 9923

一、redis内存碎片是什么意思Redis默认使用jemalloc来分配内存。根据fast'14的最佳论文,遇到变长key-value加载时会出现碎片问题:内存利用率低,实际分配的内存多于需要的内存。因此,我使用YCSB来测试Redis的内存。
1.实验第一阶段:向Redis插入100万条记录。键为20字节,值为100字节。两者都是固定长度。理论上有效数据约为120MB。
2.第2阶段:生成900,000个更新请求。请求是均匀随机分布的(每个密钥被选择的概率相等)。键值保持不变,但值更改为130字节。一次更新相当于删除原来的100字节并插入另外130字节。
3.第三阶段:产生90万个更新请求,值变为170字节。
4.第4阶段:产生90万个更新请求,值变为210字节。
5.然后有12个阶段,每次有90万个更新请求,值长度逐渐增加。
6.最后阶段不产生任何请求并重新启动redis。