Redis RPOPLPUSH 命令执行以下两步操作:首先将列表(source)中的最后一个元素(尾元素)弹出,并返回给客户端。然后将弹出的元素插入到另外一个指定的列表(destination)中,并作为该列表的的头元素。
Redis BPOPLPUSH 命令的基本语法如下:
RPOPLPUSH source destination
如果 source 不存在,那么将 返回 nil,并且不再执行其他操作。 如果 source 和 destination 相同,则列表中的表尾元素被移动到表头,并返回该元素,可以把这种特殊情况看做翻转列表操作。
BPOPLPUSH 命令可用版本:>= 1.2.0
被弹出的元素。
127.0.0.1:6379> LPUSH website www.baidu.com www.cdsy.xyz #创建列表并添加元素 (integer) 2 127.0.0.1:6379> LRANGE website 0 1 1) "www.cdsy.xyz" 2) "www.baidu.com" 127.0.0.1:6379> RPOPLPUSH website web #将website的尾部元素弹出,添加到web列表的头部 "www.baidu.com" 127.0.0.1:6379> LRANGE website 0 1 1) "www.cdsy.xyz" 127.0.0.1:6379> LRANGE web 0 1 1) "www.baidu.com"