redis怎么删数据
Redis  /  管理员 发布于 7年前   232
Redis常用的删除策略有以下三种:
1.被动删除(惰性删除):当读/写一个已经过期的Key时,会触发惰性删除策略,直接删除掉这个Key;
2.主动删除(定期删除):Redis会定期巡检,来清理过期Key;
3.当内存达到maxmemory配置时候,会触发Key的删除操作;
主动删除
在 Redis 中,常规操作由 redis.c/serverCron 实现,它主要执行以下操作:
1.更新服务器的各类统计信息,比如时间、内存占用、数据库占用情况等。
2.清理数据库中的过期键值对。
3.对不合理的数据库进行大小调整。
4.关闭和清理连接失效的客户端。
5.尝试进行 AOF 或 RDB 持久化操作。
6.如果服务器是主节点的话,对附属节点进行定期同步。
如果处于集群模式的话,对集群进行定期同步和连接测试。
Redis 将 serverCron 作为时间事件来运行,从而确保它每隔一段时间就会自动运行一次, 又因为 serverCron 需要在 Redis 服务器运行期间一直定期运行, 所以它是一个循环时间事件:serverCron 会一直定期执行,直到服务器关闭为止。
总结
如果Redis中每天过期大量Key(比如几千万),那么必须得考虑过期Key的清理:
增加Redis主动清理的频率(通过调大hz参数)
手动清理过期Key,最简单的方法是进行scan操作,scan操作会触发第一种被动删除,scan操作时候别忘了加count;
dbsize命令返回的Key数量,包含了过期Key
randomkey命令返回的Key,不包含过期Key
scan命令返回的Key,包含过期Key
info命令返回的# Keyspace
db6:keys=1034937352,expires=994731489,avg_ttl=507838502
keys对应的Key数量等同于dbsize
expires指的是设置了过期时间的Key数量
avg_ttl指设置了过期时间的Key的平均过期时间(单位:毫秒)
以上就是redis怎么删数据的详细内容,更多请关注其它相关文章!
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号