Redis 全局通用命令整理

转载请注明出处:

  1.查看所有键

keys *

  该命令会存在线程阻塞问题,keys 命令也可以通过正则匹配获取存在的缓存数据

  Redis从2.8版本后,提供了一个新的命令scan,它能有效的解决keys命令可能带来的阻塞问题。和keys命令执行时会遍历所有键不同,scan采用渐进式遍历的方式来解决keys命令可能带来的阻塞问题,每次scan命令的时间复杂度是O(1),但是要真正实现keys的功能,需要执行多次scan。Redis存储键值对实际使用的是hashtable的数据结构;

 

  scan命令可以解决keys命令可能带来的阻塞问题,同时Redis还提供了hscan、sscan、zscan渐进式地遍历hash、set、zset。

127.0.0.1:6379> scan 0
1) "6"
2) 1) "w"
   2) "i"
   3) "e"
   4) "x"

  返回结果分为两个部分:第一个部分6就是下次scan需要的cursor,第二个部分是10个键

 

 

  2.查看键总数

dbsize

  dbsize命令会返回当前数据库中键的总数。

  dbsize命令在计算键总数时不会遍历所有键,而是直接获取Redis内置的键总数变量,所以dbsize命令的时间复杂度是O(1)。而keys命令会遍历所有键,所以它的时间复杂度是O(n),当Redis保存了大量键时,线上环境 禁止使用。

  

  3.检查键是否存在

exists key

  如果键存在则返回1,不存在则返回0

  

  4.删除键

del key [key ...]

  del是一个通用命令,无论值是什么数据结构类型,del命令都可以将其删除

  

  5.键过期

expire key seconds

  Redis支持对键添加过期时间,当超过过期时间后,会自动删除键

 

  6.键的数据结构类型

type key

  例如键hello是字符串类型,返回结果为string。键mylist是列表类型,回结果为list

  

  7.查看缓存数据编码类型

object encoding key

  

 

posted @   香吧香  阅读(214)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示