Redis篇 redis基本命令和定时器原理

基本命令和定时器原理

    • [一. exists命令](#一. exists命令)
    • [二. del命令](#二. del命令)
    • [三. Expire命令](#三. Expire命令)
    • [四. ttl命令](#四. ttl命令)
    • [五. redis的过期策略](#五. redis的过期策略)
    • [六. 定时器的两种设计方式](#六. 定时器的两种设计方式)
    • [七. type命令](#七. type命令)

一. exists命令

用来判断key的值是否存在

返回值是key的个数


这样写的话,有没有什么区别呢?

效率变低,消耗资源变多。

redis本身是通过网络进行通信的,那么有更多的网络通信轮次,势必会消耗更多的资源,效率低下。

二. del命令


三. Expire命令


在设置了秒级的过期时间之后,再查询相应的key1,就会发现已经没有了。

此处的返回值。必须是key已经存在,成功返回1,失败返回0.

四. ttl命令


返回结果如果为-2 则表示key不存在

返回结果如果是-1,则没有关联过期时间

五. redis的过期策略

一个redis中可能会存在很多很多的key,那么我们是无法及时删除的,可能有很大一部分key都有过期时间,此时redis怎么知道哪些过期了该删除,哪些不该删除呢?
redis提供了两种方式

1.定期删除

2.惰性删除

六. 定时器的两种设计方式

  1. 基于优先级队列/堆来实行
  2. 时间轮


七. type命令


相关推荐
IT规划师5 小时前
Redis 数据类型全解 - GEO 地理空间:附近的人、外卖、打车——背后原理与精度陷阱(九)
redis·.net
CoderYanger10 小时前
Java EE 进阶:8.MyBatis 操作数据库(入门)(第二弹)
java·数据库·spring boot·spring·面试·java-ee·mybatis
wafrdggh13 小时前
2026电商快递批量查询怎么用?固乔助手模板设置评测
大数据·数据库·小程序
一个天蝎座 白勺 程序猿14 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
云和数据.ChenGuang15 小时前
LangGraph 异步 Node 的设计与写法实践
开发语言·人工智能·python·机器学习·php
龙腾AI白云17 小时前
仿真到现实(Sim-to-Real)迁移:跨越仿真与现实鸿沟
数据库·机器学习·plotly·知识图谱·tornado
freejackman19 小时前
【实战二】字段级血缘追踪:拆解 AST 迷局,精准穿透函数链与子查询
大数据·数据库·sql
.痞老板.20 小时前
mysql初阶--增删改查操作
数据库·mysql
我不会起名字3221 天前
Redis 从 0 到 1(三十三):机器断电 Redis 起不来——AOF/RDB 损坏的 4 步抢救流程
redis·数据恢复·aof·rdb·排查