常用结构
String
-
单值缓存
get
set
-
对象缓存
set user:1 value(Json格式)
Mset user:1:name lzh user:1balance 1888
Mget user:1
Mget Mset 适合改其中某一个字段
-
分布式锁
setNx key value :判断key是否存在 返回1表示获取成功 反之返回0
del 删除锁
防止程序以外终止导致死锁,设置超时时间
-
计数器
incr key 原子加1
-
Session共享
-
分布式系统全局序列号
incrby orderid 1000
。。。
Hash
hset key field value
对象缓存
key value太大,导致执行时间过长,不适合将大量数据放到一个key中,适合放热点数据,可以进行分段存储
hmset key field value [field value ...]
购物车场景:
List
队列
lpush key value 队列左边插入
rpush key value 队列右边插入
lpop 返回key头部元素
rpop 返回key尾部元素
brpop 阻塞式弹出元素
消息流
Set
sadd key mamber
抽奖
spop key 【count】 取出随意数,并删除成员
加前缀
关注模型
集合操作
筛选
有序集合