rediskey+五⼤数据类+原⼦性
redis key+五⼤数据类型
Redis的原⼦性
所谓原⼦操作是指不会被线程调度机制打断的操作。这种操作⼀旦开始,就会⼀直运⾏到结束,中间不会有任何的context switch(切换到另⼀个线程)
1.在单线程中,能够单条指令中完成的操作都可以认为是原⼦操作,因为中断只能发⽣于指令之间
2.在多线程中,不能被其他进程(线程)打断的操作叫做原⼦操作
redis单命令的原⼦性主要得益于redis的单线程
key
keys
查看当前库所有的key
exists aa
判断某个键是否存在,1为存在,0为不存在
flushdb
清空key
set k1 v1
添加键值对
ttl < key >
查看还有多少秒过期,-1表⽰永不过期,-2表⽰已过期expire seconds
为key设置过期时间
type < key >
查看键的类型
del < key >
删除某个键
k1的有效时间已经没了,所以被删除了,k2是被⼿动删除的
dbsize
查看当前数据库中的key的数量
flushdb
清空当前库
flushall
通杀所有库
五⼤数据类型之String
String是Redis最基本的类型,可以理解成与Memcached的⼀模⼀样的类型,⼀个key对应⼀个value String类型是⼆进制安全的,意味着Redis的STring可以包含任何数据,⽐如JPG图⽚或者序列化对象String类型是Redis最基本的数据类型,⼀个Redis中字符串value最多可以是512M
get < key >
查询对应的键值
setnx < key > < value >
只有在key不存在时设置key的值
strlen < key >
获取值的长度
append < key > < value >
将value追加到原值的末尾
incr < key >
将key中存储的数字值增1
只能对数字值操作,如果为空,新增值为1
decr < key >
将key中存储的数字值减1
只能对数字值操作,如果为空,新增值为-1
incrby/decrby < key > <;步长>
将key中存储的数字值增减,⾃定义步长
mset k4 v4 k5 v5
同时设置⼀个或者多个k-v对
mget k1 k2 k4 k5
同时获取⼀个或者多个value
msetnx k7 v666 k6 v6
同时设置⼀个或者多个k-v对 。并且仅当所有给定的key都不存在
getrange < key > <;起始位置> <;结束位置>
获得值的范围,类似java的substring
setrange < key > <;起始位置> < value >
⽤value覆写key所存储的字符串值,从起始位置开始
redis支持的五种数据类型setex k1 200 v999
设置键值的同时,设置过期时间,单位秒

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。