lpush key value

作用: 把值插入到链接头部

rpop key

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

rpush,lpop: 不解释

lrange key start stop(从0开始)

lrange key 6 6 查看索引为6的数据 lrange key 2 5 查看索引从2(包括2)到5(包括5)的数据 作用: 返回链表中[start ,stop]中的元素 规律: 左数从0开始,右数从-1开始(0 -1 选取所有元素)

lrem key count value

查看列表的右边5 条数据:

lrange key - 5 - 1

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

ltrim key start stop

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

lindex key index

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

llen key

作用:计算链接表的元素个数 redis 127.0.0.1:6379> llen task (integer) 3 redis 127.0.0.1:6379>

l×××ert key after|before search value

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

有多个被查询的值的插入:

rpoplpush source dest

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

场景: task + bak 双链表完成安全队列

业务逻辑: 1:Rpoplpush task bak 2:接收返回值,并做业务处理 3:如果成功,rpop bak 清除任务. 如不成功,下次从bak表里取任务

brpop ,blpop key timeout

作用:等待弹出key的尾/头元素, Timeout为等待超时时间 如果timeout为0,则一直等待

场景: 长轮询Ajax,在线聊天时,能够用到


注意: 由于一个列表可以储存几百万条数据,所以, 绝对不要冒然列出一个列表里面的所有数据,否则可能导致大量数据输出而瞬间耗尽系统的1/0 资源。 应该是:先查看列表的长度,如确定数据量很小,则列出所有的值;如果数据量很大,则可以使用索引查看头几条数据与末尾几条数据。