redis基础

redis是键值对形式的数据库,存放在内存中,所以可以用来保存要经常进行查询插入的数据,redis中有添加数据,删除数据,设置数据的有效期。

数据如果过了有效期redis自身会对其做处理:

1.被动删除:当获取该key,首先会判断该key是否过期,如果过期就会删除该key,并返回空;

2.主动删除:redis会定期删除那些过期的key,每次随机选择100个设置了有效期的key,判断是否过期如果过期就删除,删除的数据达到了25%则会进行下一次的主动删除操作

3.maxmemory:当前已用内存如果超过了maxmemory,则触发主动清理策略

  • volatile-lru:只对设置了过期时间的key进行LRU(默认值)
  • allkeys-lru : 删除lru算法的key
  • volatile-random:随机删除即将过期key
  • allkeys-random:随机删除
  • volatile-ttl : 删除即将过期的
  • noeviction : 永不过期,返回错误当mem_used内存已经超过maxmemory的设定,对于所有的读写请求,都会触发redis.c/freeMemoryIfNeeded(void)函数以清理超出的内存。注意这个清理过程是阻塞的,直到清理出足够的内存空间。所以如果在达到maxmemory并且调用方还在不断写入的情况下,可能会反复触发主动清理策略,导致请求会有一定的延迟。 
尽量不要触发maxmemory。

以后再更

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值