Redis 数据类型--list

list常用命令:

LPUSH key value [value ...]  //将一个或者多个值value插入到key列表头(最左端)

RPUSH key value [value ...]  //将一个或者多个value值插入到key列表尾(最右端)

LPOP key  //移除并返回key列表的头部元素

RPOP key   //移除并返回key列表的尾部元素

LRANGE key start stop // 返回列表中指定区间的元素

BLPOP key [key ...] timeout //从key列表表头弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,则一直等待

BRPOP key [key ...] timeout //从key列表表尾部弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,则一直等待

应用场景:

实现一些数据结构:

栈(FILO):lpush + lpop

队列(FIFO):rpush + lpop

1、redis异步消息队列操作:使用list作为队列,rpush生产消息,lpop消费消息,当lpop取不到消息的时候,要适当sleep一些,如果不想用sleep可以用blpop,使用阻塞模式。例如订阅号推送消息,

相关推荐