文章目录
- Redis列表类型模拟队列操作
- 1. 使用用lpush和rpop模拟队列的操作
- 1.1 lpush介绍
- 1.2 rpop介绍
- 1.3 llen介绍
- 1.4 lrange介绍
- 1.5 del命令介绍
- 2. 使用用rpush和lpop模拟队列的操作
- 2.1 rpush介绍
- 2.2 lpop介绍
Redis列表类型模拟队列操作
Redis的列表类型(list)可以存储一个有序的字符串列表。
- 列表类型内部是使用双向链表实现的
- 可以使用lpush和rpop或者rpush和lpop模拟队列的操作
1. 使用用lpush和rpop模拟队列的操作
127.0.0.1:6379> lpush books java
(integer) 1
127.0.0.1:6379> lpush books python
(integer) 2
127.0.0.1:6379> lpush books c++ golang
(integer) 4
127.0.0.1:6379> llen books
(integer) 4
127.0.0.1:6379> lrange books 0 -1
1) "golang"
2) "c++"
3) "python"
4) "java"
127.0.0.1:6379> rpop books
"java"
127.0.0.1:6379> rpop books
"python"
127.0.0.1:6379> llen books
(integer) 2
127.0.0.1:6379> lrange books 0 -1
1) "golang"
2) "c++"
127.0.0.1:6379> del books
(integer) 1
127.0.0.1:6379> lrange books 0 -1
(empty list or set)
1.1 lpush介绍
lpush表示从从列表左边添加元素,返回值表示增加元素后列表的长度。
127.0.0.1:6379> lpush books java
(integer) 1
127.0.0.1:6379> lpush books python
(integer) 2
lpush也可以同时添加多个元素,如
127.0.0.1:6379> lpush books c++ golang
(integer) 4
1.2 rpop介绍
rpop表示从右侧元素列表中移除元素,返回被移除的元素。
127.0.0.1:6379> rpop books
"java"
1.3 llen介绍
llen返回列表的长度
127.0.0.1:6379> llen books
(integer) 4
1.4 lrange介绍
lrange返回指定区间的元素,0代表列表的第一个元素,1代表列表的第2个元素,以此类推;也支持负数,-1代表列表的最后一个元素,-2代表列表的倒数第2个元素以此类推。
127.0.0.1:6379> lrange books 0 -1
1) "golang"
2) "c++"
3) "python"
4) "java"
1.5 del命令介绍
del删除list列表所有元素
127.0.0.1:6379> del books
(integer) 1
127.0.0.1:6379> lrange books 0 -1
(empty list or set)
2. 使用用rpush和lpop模拟队列的操作
127.0.0.1:6379> rpush books java
(integer) 1
127.0.0.1:6379> rpush books python c++
(integer) 3
127.0.0.1:6379> rpush books golang
(integer) 4
127.0.0.1:6379> llen books
(integer) 4
127.0.0.1:6379> lrange books 0 -1
1) "java"
2) "python"
3) "c++"
4) "golang"
127.0.0.1:6379> lpop books
"java"
127.0.0.1:6379> llen books
(integer) 3
127.0.0.1:6379> lrange books 0 -1
1) "python"
2) "c++"
3) "golang"
2.1 rpush介绍
rpush表示从从列表右边添加元素,返回值表示增加元素后列表的长度。
127.0.0.1:6379> rpush books java
(integer) 1
rpush也可以同时添加多个元素,如
127.0.0.1:6379> rpush books python c++
(integer) 3
2.2 lpop介绍
lpop表示从左侧元素列表中移除元素,返回被移除的元素。
127.0.0.1:6379> lpop books
"java"