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命令


相关推荐
777VG3 小时前
PostgreSQL +martin将多张表输出成一个 MVT
前端·数据库·postgresql
aax12134533 小时前
VOC 集群治理工程实操|美丽蓝天绿岛项目 RTO 工艺选型、管控方案与申报要
大数据·数据库·人工智能
IvorySQL4 小时前
PG 日报|优化缓冲区批量扫描,降低多套接字并发竞争
数据库·人工智能·postgresql·开源·区块链
这个DBA有点耶4 小时前
交易型数据库是什么?OLTP核心能力与2026选型指南
数据库·数据仓库·sql·database·数据库架构·olap·dba
大熊猫侯佩4 小时前
WWDC26 全新 SwiftData 的 .codable 宏选项:它不是泛型专用胶水
数据库·swift·apple
hold?fish:palm5 小时前
kv存储主从复制的设计与实现
c++·redis·后端
童谣16 小时前
越华环保集团市级统筹申报数字化中台:政策校验与减排仿真一体化架构
数据库·架构
制造数据与AI践行者老蒋6 小时前
离谱!PromptTemplate 遇上 JSON,花括号直接引发解析战争
数据库·microsoft·json
中微极客7 小时前
用LangChain 0.3构建生产级RAG与Agent:从API集成到Streamlit部署
数据库·人工智能·langchain
吴声子夜歌7 小时前
MongoDB 4.x——并发优化
数据库·mongodb