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

优质的南昌网站设计自己做的网站 网站备案流程

优质的南昌网站设计,自己做的网站 网站备案流程,苏州公司名称查询,呼和浩特做网站目录 Redis过期清理策略Redis内存淘汰机制 Redis过期清理策略 Redis 通过设置键的过期时间来实现自动删除过期键。当键的过期时间到达时,Redis 会自动将该键删除。Redis 过期清理策略主要有以下两种: 惰性删除:Redis 在获取键时会检查键是否…

目录

    • Redis过期清理策略
    • Redis内存淘汰机制

Redis过期清理策略

Redis 通过设置键的过期时间来实现自动删除过期键。当键的过期时间到达时,Redis 会自动将该键删除。Redis 过期清理策略主要有以下两种:

  1. 惰性删除:Redis 在获取键时会检查键是否过期,如果过期则删除。惰性删除可以确保了过期键不会被返回给客户端,但是可能导致内存占用较高,因为不会主动回收过期键的内存空间。在惰性删除策略下,如果过期键一直没有被访问,那么它将永远不会被删除。所以Redis还有下面一种清理策略

  2. 定期删除:当一个key设置了过期时间之后,Redis会将这个key放入一个过期字典中,并设置对应的过期时间。然后,Redis会启动一个定时器,定时检查过期字典是否有过期的key。如果有,Redis会将这个key从数据中删除。这种策略可以保证内存被尽快释放,但在CPU时间紧张的情况下,可能需要花时间去删除这些key

Redis 定时扫描策略

Redis 默认会每秒进行十次过期扫描,过期扫描不会遍历过期字典中所有的 key,而是
采用了一种简单的贪心策略。

  1. 从过期字典中随机 20 个 key;
  2. 删除这 20 个 key 中已经过期的 key;
  3. 如果过期的 key 比率超过 1/4,那就重复步骤 1;

同时,为了保证过期扫描不会出现循环过度,导致线程卡死现象,算法还增加了扫描时
间的上限,默认不会超过 25ms。

Redis内存淘汰机制

当已用内存超过maxmemory限定时,Redis会触发内存淘汰机制。内存淘汰机制包括对设置了过期时间的key进行处理的几种方式,如volatile-ttl(根据过期时间的先后进行删除,越早过期的越先被删除)、volatile-random(随机删除设置了过期时间的键值对)等。

maxmemory配置指定了Redis可以使用的内存,你可以在redis.conf文件进行设置

例如,要配置100兆的内存限制,可以在redis.conf文件中添加以下指令:

maxmemory 100 mb

以下是Redis的内存淘汰机制的几种策略:

  1. noeviction:这是默认策略,当内存不足以容纳新写入数据时,新写入操作会报错,无法写入新数据。
  2. allkeys-random:在所有键中,随机选择并删除数据。
  3. volatile-random:在设置了过期时间的键中,随机选择并删除数据。
  4. volatile-ttl:在设置了过期时间的键中,优先删除剩余生存时间最短的键值对。
  5. allkeys-lru:在所有键中,删除最近最少使用的键。
  6. volatile-lru:在设置了过期时间的键中,删除最近最少使用的键。
  7. allkeys-lfu:在所有键中,删除最不经常使用(访问次数最少)的键。
  8. volatile-lfu:在设置了过期时间的键中,删除最不经常使用访问次数最少)的键。

注:LFU(Least Frequently Used)策略是在Redis 4.0版本开始加入的

内存淘汰策略设置

内存淘汰策略可以通过maxmemory-policy参数进行设置

我们可以打开 Redis 配置文件 redis.conf,在配置文件中找到 maxmemory-policy 参数,根据你的需求,选择一个合适的策略,并将其设置为对应的值。

例如,如果要使用 LFU 策略,可以将 maxmemory-policy 设置为 volatile-lfu 或 allkeys-lfu。

如果我们使用的是lru或者lfu策略,那么还有一个参数需要我们了解,那就是maxmemory-samples 参数

maxmemory-samples 参数用于设置 Redis 在执行 LFU(Least Frequently Used)和 LRU(Least Recently Used)淘汰策略时所使用的样本数目。

LFU 和 LRU 策略都需要通过近期访问记录来判断键的热度。为了减少计算开销,Redis 会对一部分键进行采样,然后根据这些样本来估计键的访问频率或访问时间。maxmemory-samples 参数指定了采样的样本数目。

较小的样本数目可以减少采样的计算开销,但可能导致对键的访问频率或访问时间估计不准确。而较大的样本数目可以提高估计的准确性,但会增加计算开销。

默认情况下,maxmemory-samples 参数的值为 5。你可以根据实际情况进行调整。通常来说,如果 Redis 实例的键数量很大,适当增加 maxmemory-samples 的值可能会更好地捕捉键的热度变化。

http://www.yayakq.cn/news/117520/

相关文章:

  • 门户网站建设公司渠道免费查企业老板的软件
  • 免费做电子书的网站苏州电商网站建设
  • 下载asp做网站无极官方网站下载
  • 杭州外贸网站建设公司申跃应用软件开发包括什么
  • 小程序软件制作网站电子商务网站建设如何实施
  • 南宁网站建设平台网站建设中页面
  • 网站不能访问如何做冗余wordpress引用群晖文件夹
  • 南通做网站公司哪家好中国三大生产建设兵团
  • 网站建设策划方案书wordpress apple4us
  • 永州高端网站建设网站开发后台框架
  • 网站建设维护专员金蝶软件官网
  • 免费网站软件app网站建设推广信息
  • 网站开发的主要工作wordpress开发手册中文版
  • 怎么修改网站内容做健身类小程序的网站
  • 网站开发的英文文献网站建设行业分析报告
  • 公司网站功能性建设有哪些乌海市网站建设
  • 个人网站的设计师wordpress 页面 编辑
  • 网站做后台教程wordpress 另类加速
  • 做童车外贸上哪个网站六安市网站建设
  • 万能网页视频下载器淄博网站seo公司
  • 做网站要服务器吗石家庄视频网站建设公司
  • 网站 第三方登录做网站的前端是做什么
  • 建设银行官网的网站首页sqlite 做网站
  • c 语言做网站网站建设的优缺点
  • dedecms做的网站手机上看图片变形哪些网站可以做外链
  • wp网站打开太慢怎么做优化wordpress考试主题
  • 孟村县做网站价格通城做网站的
  • 屏蔽网站ip域名与空间购买后怎么做网站
  • python可以做网站枫树seo网
  • 海淀专业企业网站建设qq是谁的公司开发的