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

Redis--通用命令学习

目录

一、引言

二、基础命令

1.set

2.get 

3.keys

3.1 keys ?

3.2 keys *

3.3 keys [abe] 

3.4 keys [^]

3.5 keys [a-b]

4.exists

5.delete

6.expire

 7.ttl

8.type 

三、Redis中的过期策略(面试题)

1.惰性删除

2.定期删除

3.定时器

四、总结


一、引言

  本篇文章就Redis在Ubunto上面的一些简单命令进行介绍。

二、基础命令

1.set

  set命令就是设置键值对的,例如 set key value

2.get 

获取键的值

3.keys

  全局命令,简单理解就是在整个redis上面进行查找

3.1 keys ?

  ?能够代替其中一个字符

3.2 keys *

  * 能够代替零个或者多个字符

3.3 keys [abe] 

 []查找里面的内容代替的字符

 

3.4 keys [^]

  查找除了这个的字符

3.5 keys [a-b]

  查找a-b的内容

 注意:尽量少使用keys * 这样的查找全部的操作,可能会把服务器卡崩,所以尽量不用这类操作

4.exists

  判定key是否存在,返回值是key存在的个数,时间复杂度是O(1)

5.delete

和keys,exists一样,返回值是删除的个数,时间复杂度是O(1)

6.expire

  给指定的key设置过期时间,超过这个时间这个key就会被自动删除。返回值是一个数字,1表示成功,0表示失败。此处的设定过期时间,必须是针对已经存在的key设置,时间复杂度也是O(1).

想使用毫秒的话,使用pexpire key。

 7.ttl

  查询过期时间,time to live 存活时间,同时还存在pttl 这样的操作命令,时间复杂度是O(1)

返回值是剩余过期时间,-1表示没有关联过期时间,-2表示key不存在

8.type 

返回key对应的数据类型,但redis所有的key都是String类型,此处指的是对应的value的类型。

三、Redis中的过期策略(面试题)

  redis整体的策略是定期删除惰性删除

1.惰性删除

  假设key已经到过期时间了,暂时还没进行删除。key还存在。后面访问到了这个key,发现这个key已经过期,这次访问就会让redis服务器触发删除key的操作,同时返回一个nil

2.定期删除

  每次抽取一部分key进行过期时间(保证抽取检查的过程足够快)

  redis还提供了一系列内存淘汰=策略。

3.定时器

在某个时间到达之后,执行指定的任务。

1.基于优先级队列(堆),过期时间早的先出队列。

队首元素就是最早要过期的key。

此时定时器只要一个线程,让这个线程去检查队首元素,看其是否过期即可,如果队首元素还没过期,后续元素一定没过期。

2.时间轮

设置一个类似轮盘来进行定时的操作

但以上两种方案redis都没有实现。

四、总结

  本篇文章就介绍了Redis的通用命令,但Redis还有更多的命令,这就需要再使用时大家能够去Redis官网进行查询。感谢大家观看!


http://www.kler.cn/a/451151.html

相关文章:

  • 【赵渝强老师】MongoDB逻辑存储结构
  • JAVAweb学习日记(三)Ajax
  • vulnhub靶场-matrix-breakout-2-morpheus攻略(截止至获取shell)
  • 【Yonghong 企业日常问题 06】上传的文件不在白名单,修改allow.jar.digest属性添加允许上传的文件SH256值?
  • 如何在 Ubuntu 22.04 上安装和使用 Composer
  • Docker 部署 plumelog 最新版本 实现日志采集
  • centos权限大集合,覆盖多种权限类型,解惑权限后有“. + t s”问题!
  • 技术与教育的融合:构建现代成绩管理系统
  • 4、数据结构与算法解析(C语言版)--栈
  • PH热榜 | 2024-12-24
  • 提高保养效率:4S店预约系统的设计与开发
  • SpringBoot简单使用Stomp
  • 深入理解批量归一化(BN):原理、缺陷与跨小批量归一化(CmBN)
  • Redis数据库操作备份
  • 手机外观边框缺陷视觉检测智慧方案
  • Hive 部署
  • 43.在 Vue 3 中使用 OpenLayers 利用 Canvas Clip 实现上卷帘功能
  • 业务栈、异常栈、中断栈独立设置的优劣势分析(RISC-V架构)
  • 【数据分析】贝叶斯定理
  • dubbo2.7.23注册中心、配置中心、元数据中心
  • centos日志管理,xiao整理
  • MBox20 网关拓新CNC 机床工业数据采集
  • 2024财年美国EB1A和NIW移民项目获批数据发布,获批率连续下跌,原因在哪?
  • 创新人工智能平台-MindsDB
  • 基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
  • ArKTS基础组件3