06.19 3、Redis系列——Redis命令(二)列表命令

第一篇介绍过Redis的列表允许用户从序列的两端推入或者弹出元素,获取列表元素,以及执行各种常见的列表操作。本次通过示例展示一些最常见的列表处理命令。

3、Redis系列——Redis命令(二)列表命令

一些常用的列表命令

示例:

  1. 在向列表推入元素时,推入操作执行完毕之后会返回列表当前的长度。
  2. lrange:列表的左端为开头,右端为结尾显示列表数据。
  3. lpop:通过重复地弹出列表左端的元素,可以按照从左到右的顺序来获取列表中的元素。
  4. rpush:可以同时推入多个元素。
  5. ltrim:可以从列表的左端,右端或者左右两端删除任意数量的元素。
3、Redis系列——Redis命令(二)列表命令

在这个示例里面使用了ltrim命令,组合使用ltrim和lrange可以构建出一个在功能上类似于lpop或rpop,但是却能够一次返回并弹出多个元素的操作。

3、Redis系列——Redis命令(二)列表命令

阻塞式的列表弹出命令以及在列表之间移动元素的命令

示例:

  • 初始化一些元素到两个列表中;
  • brpoplpush:将一个元素从一个列表移动到另一个列表,并返回被移动的元素。
  • 当list2中没有任何元素时,阻塞弹出操作会在给定的时限内等待可弹出的元素出现,并在时限到达之后返回。
  • brpoplpush list2 list 1:弹出list2最右端的元素,并将被弹出的元素推入list的左端。
  • blpop:从左到右地检查传入的列表,并对最先遇到的非空列表执行弹出操作。
3、Redis系列——Redis命令(二)列表命令

对于阻塞弹出命令和弹出并推入命令,最常见的用例就是消息传递(messaging)和任务队列(task queue)。

列表的一个主要优点在于它可以包含多个字符串值,这使得用户可以将数据集中在同一个地方。Redis的集合提供了和列表类似的操作,但集合只能保存各个不相同的元素。下篇介绍集合命令。


分享到:


相關文章: