`

redis list队列安全用法——RPOPLPUSH

 
阅读更多

参考:http://redisdoc.com/list/rpoplpush.html

 

在一个原子时间内,执行以下两个动作:

 

  • 将列表 source 中的最后一个元素(尾元素)弹出,并返回给客户端。
  • 将 source 弹出的元素插入到列表 destination ,作为 destination 列表的的头元素。
  • 使用 RPOPLPUSH 命令(或者它的阻塞版本 BRPOPLPUSH )可以解决这个问题:因为它不仅返回一个消息,同时还将这个消息添加到另一个备份列表当中,如果一切正常的话,当一个客户端完成某个消息的处理之后,可以用 LREM 命令将这个消息从备份表删除。

demo:


 

 

 注意lrem方法如果删除的是一个json对象,需要反转义一下,否则删除不成功。

 

  • 大小: 32.2 KB
  • 大小: 18.5 KB
  • 大小: 26.6 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics