Redis下一小节:2-9 set
Redis list(2)
1、list中重要的API
(1)linsert
(2)lpop
(3)rpop
(4)lrem
lrem listkey 0 a 删除所有等于a的元素:
删除之后的图结构:
lrem listkey -1 c 从右边删除1个c元素:
删除之后的图结构:
(5)ltrim
ltrim listkey 1 4 保留索引为1~4的元素:
执行ltrim listkey 1 4之后图结构:
ltrim listkey 0 2 保留索引为0~2的元素:
执行ltrim listkey 0 2之后图结构:
(6)lrange
(7)lindex
(8)llen
(9)lset
执行lset listkey 2 java之前:
执行lset listkey 2 java之后:
2、list命令演示
3、list实战-TimeLine
微博时间轴例子:
首先“把你关注的人更新微博”数据使用list实现(lpush),实现时间轴功能(按时间排序)。
然后把微博相关信息通过string或者hash存储,通过key实现list结构与string or hash之间的映射。
4、list查缺补漏
blpop、brpop
5、list实现tips(小技巧)
(1)LPUSH + LPOP = Stack(栈)
(2)LPUSH + RPOP = Queue(队列)
(3)LPUSH + LTRIM = Capped Collection(固定长度集合)
(4)LPUSH + BRPOP = Message Queue(消息队列)