Redis总结(三)——全局命令

前言:

在对Redis进行学习之前,了解Redis的一些全局命令、数据结构、内部编码、单线程命令处理机制还是十分必要的,它是学习redis的基础,本次总结先从全局命令入手。

全局命令:

Redis有5中数据结构,它们是键值对中的值,对于键来说有一些通用的命令。

1、查看所有键:

keys *
例:

插入3对字符串类型的键值对

keys * 命令输出所有键:


2、键总数

dbsize
例:

插入一个列表类型的键值对,其值是多个元素组成


dbsize命令会返回当前数据库中键的总数,当前数据库有4个键,分别是name、age、city、mylist,所有dbsize的结构是4。


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

3、检查键是否存在

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


4、删除键

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

例如下面将字符串类型的键city和列表类型的键mylist分别删除:

返回结果为成功删除键的个数,删除不存在的键返回0。

del命令支持删除多个键:


5、键过期

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

例:为键hello设置10秒过期时间


ttl命令会返回键的剩余过期时间,它有三种返回值:

1)大于等于0的整数:键剩余的过期时间。
2)-1:键没设置过期时间。

3)-2:键不存在

通过ttl命令观察键hello的剩余过期时间:


6、键的数据结构类型

type key
例如city是字符串类型,返回string。mylist是列表类型,返回list



如果键不存在,返回none


总结:

通过redis这几个全局命令简单了解5中数据结构的使用,希望能帮到一些伙伴。

猜你喜欢

转载自blog.csdn.net/ytm15732625529/article/details/80036783