1、Redis之List简介spa
1. List是简单的字符串列表,按照插入顺序排列。命令行
2. 一个列表最多可存储232-1个元素(40多亿)。blog
2、Redis之List命令行操做索引
Lrange:获取列表指定区间中的元素。0表示列表第一个元素,-1表示最后一个元素,-2表示倒数第二个元素。因此获取列表全部元素命令为:lrang list_name 0 -1。队列
Lpush:将一个或多个值插入list头部。rem
Rpush:将一个或多个值插入list尾部。字符串
若key不存在则先建立一个空列表,若key对应的值不是列表类型则报错。bfc
Lpushx:将一个或多个值插入已存在的列表头部,列表不存在时操做无效。List
Rpushx:将一个或多个值插入已存在的列表尾部,列表不存在时操做无效。搜索
Lpop:移除并返回列表的第一个元素。
Rpop:移除并返回列表的最后一个元素。
Blpop:移除并获取列表的第一个元素。
Brpop:移除并获取列表的最后一个元素。
若是列表没有元素则会阻塞列表直到等待超时或发现可弹出元素为止。
能够发现,如果blpop或brpop命令指定的多个key中,存在key对应队列有元素则会立刻弹出,并忽略不存在的key,不然会一直阻塞到超时或发现可弹出元素为止。(这里指定10秒超时)
Rpoplpush:移除列表中最后一个元素,将其插入另外一个列表头部,并返回这个元素。
Brpoplpush:移除列表中最后一个元素,将其插入另外一个列表头部,并返回这个元素。若是列表没有元素则会阻塞列表直到等待超时或发现可弹出元素为止。
Llen:返回列表长度。
Lindex:经过索引获取列表中的元素。
Lset:经过索引设置列表中元素的值。如果索引超出范围,或对一个空列表进行lset操做,则返回错误。
Linsert:在列表中指定元素前或后面插入元素。若指定元素不在列表中,或列表不存在时,不执行任何操做。
Lrem:根据参数count的值,移除列表中与参数value相等的元素。
count > 0 : 从表头开始向表尾搜索,移除与value相等的元素,数量为count。
count < 0 : 从表尾开始向表头搜索,移除与value相等的元素,数量为count的绝对值。
count = 0 : 移除表中全部与value相等的值。
Ltrim:对一个列表进行修剪,只保留指定区间的元素,其余元素都删除。