List常用操作
List常用操作
lpush key value1 value2... 将一个或多个值插入到最左边
rpush key value1 value2... 将一个或多个值插入到最右边
lpop key 移除并返回key列表的头元素
rpop key 移除并返回key列表的尾元素
lrange key start stop 返回列表key指定区间内的元素
blpop key1 key2... timeout 从key列表表头弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,一直阻塞等待
brpop key1 key2... timeout 从key列表末尾弹出一个元素,若列表中没有元素,阻塞等待timeout秒,如果timeout=0,一直阻塞等待
List应用场景
-
常用数据结构
- Stack(栈) = LPUSH + LPOP
- Queue(队列) = LPUSH + RPOP
- Blocking MQ(阻塞队列) = LPUSH + BRPOP
-
微博和微信公众号的消息流
石头关注阿灿,妹妹等人
-
阿灿发微博,消息id为520
lpush msg:{石头-石头的id} 520
-
妹妹发微博,消息id为521
lpush msg:{石头-石头的id} 521
-
石头查看最新消息
lrange msg:{石头-石头的id} 0 4
-
我成功因为我志在成功
浙公网安备 33010602011771号