redis笔记(三)link 链表结构

2019-02-18  本文已影响0人  peterz博客
lpush key value

作用: 把值插入到链表头部
lpush word A

lrpush key value

作用: 把值插入到链表尾部
rpush word Z

llpop key

作用: 返回并删除链表头部元素
lpop word

lrpop key

作用: 返回并删除链表尾元素
rpop word

lrange key start stop

作用: 返回链表中[start ,stop]中的元素
规律: 左数从0开始,右数从-1开始
lrange word 0 1
小技巧 查看链表所有元素
lrange word 0 -1

lrem key count value

作用: 从key链表中删除 value值
注: 删除count的绝对值个value后结束
count>0 从表头删除
count<0 从表尾删除
lrem word 2 a

ltrim key start stop

作用: 剪切key对应的链接,切[start,stop]一段,并把该段重新赋给key
ltrim word 1 2

lindex key index

作用: 返回index索引上的值,
lindex word 2

llen key

作用:计算链接表的元素个数
llen word

linsert key after|before search value

作用: 在key链表中寻找’search’,并在search值之前|之后,.插入value
注: 一旦找到一个search后,命令就结束了,因此不会插入多个value
linsert word before b a

lrpoplpush source dest

作用: 把source的尾部拿出,放在dest的头部,
并返回 该单元值

场景: task + bak 双链表完成安全队列
业务逻辑:
1.rpoplpush task bak
2:接收返回值,并做业务处理
3:如果成功,rpop bak 清除任务. 如不成功,下次从bak表里取任务

lbrpop /blpop key timeout

作用:等待弹出key的尾/头元素
Timeout为等待超时时间,如果timeout为0,则一直等待
场景: 长轮询Ajax,在线聊天时,能够用到
brpop word 0

上一篇下一篇

猜你喜欢

热点阅读