广告
返回顶部
首页 > 资讯 > 数据库 >redis清除内存碎片的方法
  • 427
分享到

redis清除内存碎片的方法

redis清除内存碎片的方法 2016-06-23 16:06:41 427人浏览 绘本
摘要

redis清除内存碎片的方法

Redis 4.O-RC3版本之后,Redis自身提供了一种清除内存碎片的方法

清除的原理很简单,通过复制拷贝将不连续的存放的数据搬到一起形成一块连续的内存空间,如下图:

如上图,清除之前A和B不是连续的,中间隔着两个字节空闲1,但是在执行清除内存碎片操作之后,Redis拷贝了B到空闲1,释放掉之前B的空间,此时空闲1和空闲2则变成了连续的空闲空间了。

那么问题来了,这种方式固然好,但是对于单线程的Redis来说,通过这种拷贝复制的方式显然是一种耗时的操作,性能大大降低,那么有什么好的方法呢?

Redis提供了参数配置,可以控制清除内存碎片的时机,命令如下:

config set activedefrag yes

以上命令启动自动清理,但是具体什么时候清理,还要受以下两个参数的影响:

  1. active-defrag-ignore-bytes 400mb:如果内存碎片达到了408mb,开始清理(自定义)
  2. active-defrag-threshold-lower 20:内存碎片空间占操作系统分配给Redis的总空间比例达到20%时,开始清理(自定义)

以上两个参数只有全部满足才会开始清理

除了以上触发清理内存碎片的参数,Redis还提供了两个参数来保证在清理过程中不影响处理正常的请求,如下:

1. active-defrag-cycle-min 25:表示自动清理过程所用CPU时间的比例不低于25%,保证清理能正常开展

2. active-defrag-cycle-max 75:表示自动清理过程所用CPU时间的比例不高于75%,一旦超过,就停止清理,从而避免在清理时,大量的内存拷贝阻塞 Redis,导致响应延迟升高。

以上两个参数控制了清理过程中的CPU时间占比,保证了正常处理请求不受影响

您可能感兴趣的文档:

--结束END--

本文标题: redis清除内存碎片的方法

本文链接: https://www.lsjlt.com/news/8201.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • redis清除内存碎片的方法
    ...
    99+
    2016-06-23
    redis清除内存碎片的方法
  • 详解如何清理Redis内存碎片
    目录什么是Redis内存碎片?Redis内存碎片是如何形成的?如何判断Redis是否有内存碎片?如何清理内存碎片?内存碎片自动清理如何缓解这个问题?总结明明做了数据删除,数据量已经不大了,为什么使用 top 命令查看时,...
    99+
    2023-04-19
    redis内存碎片 redis内存碎片整理 redis内存碎片处理
  • redis清除缓存数据的方法
    本篇文章给大家分享的是有关redis清除缓存数据的方法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Windows环境下使用命令行进行redi...
    99+
    2022-10-18
  • Windows下清除Redis缓存的方法
    Windows下清除Redis缓存的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!Windows下清除Redis缓存1...
    99+
    2022-10-18
  • redis清缓存的方法
    这篇文章将为大家详细讲解有关redis清缓存的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.访问redis根目录    cd  /u...
    99+
    2022-10-18
  • 清空redis缓存的方法
    这篇文章主要介绍了清空redis缓存的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。1.访问redis根目录    cd...
    99+
    2022-10-18
  • html清除缓存的方法
    这篇文章给大家分享的是有关html清除缓存的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。html清除缓存的方法:1、在meta标签里使用“Cache-Control”属性,语法“CONTENT="...
    99+
    2023-06-14
  • javascript清除缓存的方法
    本篇内容介绍了“javascript清除缓存的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!javascript清除缓存的方法:1、在h...
    99+
    2023-06-14
  • linux下清理redis缓存的方法
    这篇文章主要介绍了linux下清理redis缓存的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。1、先确保redis进程存活ps -ef|g...
    99+
    2022-10-18
  • SpringBoot Redis清除所有的key的实现方法
    我们可以使用RedisTemplate类的keys方法来获取Redis中所有的key,然后再遍历所有的key,使用delete方法删除每一个key来实现清除Redis中所有的数据。 ...
    99+
    2023-05-18
    SpringBoot Redis清除key SpringBoot Redis key
  • eclipse清除缓存的方法有哪些
    Eclipse清除缓存的方法有以下几种:1. 清除工作区的元数据:选择菜单栏的"File" -> "Refresh",或者使用快捷键...
    99+
    2023-09-22
    eclipse
  • Linux系统清除缓存的方法总结
    1)缓存机制介绍 在linux系统中,为了提高文件系统性能,内核利用一部分物理内存分配出缓冲区,用于缓存系统操作和数据文件,当内核收到读写的请求时,内核先bWAgBVH去缓存区找是否有请求的数据,有就直接返回,如果没有...
    99+
    2022-06-04
    Linux 系统缓存
  • Android清除应用缓存的两种方法
    第一种 使用ActivityManager中的clearApplicationUserData方法,代码如下: ActivityManager am = (ActivityMa...
    99+
    2022-11-11
  • Android如何清除应用缓存的方法
    本篇内容主要讲解“Android如何清除应用缓存的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Android如何清除应用缓存的方法”吧!第一种使用ActivityManager中的clea...
    99+
    2023-06-14
  • window清除dns缓存的方法是什么
    在Windows操作系统中,清除DNS缓存的方法如下:1. 打开命令提示符:按下Win+R键,输入cmd,按下回车键。2. 输入以下...
    99+
    2023-06-12
    清除dns缓存
  • redis实现清空缓存的方法是什么
    这篇文章主要介绍“redis实现清空缓存的方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“redis实现清空缓存的方法是什么”文章能帮助大家解决问题。 ...
    99+
    2022-10-19
  • MySQL删除或清空表内数据的方法
    MySQL删除或清空表内数据的方法 一、使用MySQL清空表数据命令:truncate SQL语法为: truncate table 表名 注意: truncate该命令会直接将数据表内数据清空;truncate该命令删除数据后会重置Ide...
    99+
    2023-08-17
    mysql 数据库
  • redis内存满了的解决方法
    这篇文章主要介绍redis内存满了的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!redis内存满了解决方法:1,增加内存。2,使用内存淘汰策略。3,Redis集群。重点介绍...
    99+
    2022-10-18
  • redis缓存内存占满的解决方法
    这期内容当中的小编将会给大家带来有关redis缓存内存占满的解决方法,以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。缓存数据满了怎么办首先要明确,用作缓存的数据都是设置了过期时间的,没有...
    99+
    2022-10-18
  • tomcat清除项目缓存的方法有哪些
    Tomcat清除项目缓存的方法有以下几种:1. 重启Tomcat服务器:这是最简单也是最常见的方法,通过重启Tomcat服务器可以清...
    99+
    2023-09-23
    tomcat
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作