加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

Redis避不开的五种数据布局

发布时间:2018-10-23 14:02:39 所属栏目:编程 来源:编辑部的故事
导读:Redis 中有 5 种数据布局,别离是字符串(String)、哈希(Hash)、列表(List)、荟萃(Set)和有序荟萃(Sorted Set),由于行使 Redis 场景的开拓中必定是无法避开这些基本布局的,以是纯熟把握它们也就成了一项必不行少的手段。本文章精腹地先容了 Redis 的这几

我们看上图中的呼吁中,固然我们将 count 参数指定的是 5,将 value 参数指定的是 2,但因为当火线表中只有一个 2,以是,当前 lrem 呼吁最多只能删除 1 个元素,而且 lrem 呼吁也是有返回值的,也就是当前乐成删除元素的个数。

Redis避不开的五种数据布局

count < 0:从右到左,最多删除 count 个元素。

Redis避不开的五种数据布局

count = 0:删除全部元素。

Redis避不开的五种数据布局

凭证索引范畴修剪列表

ltrim key start stop

ltrim 呼吁会直接保存 start 索引到 stop 索引的之间的元素,并包罗当前元素,而之外的元素则城市删除去,以是该呼吁也叫修剪列表。

Redis避不开的五种数据布局

而且有一点要留意,ltrim 呼吁不会返回当前的列表中元素的个数,而是返回改呼吁是否乐成的状态。

4.修改

修改指定索引下标的元素

lset key index value

Redis避不开的五种数据布局

5.阻塞操纵

blpop key [key ...] timeout

brpop key [key ...] timeout

blpop 和 brpop 呼吁是 lpop 和 rpop 呼吁的阻塞版本,它们除了弹出偏向差异以外,行使要领基内情同。

key [key ...]:可以指定多个列表的键。

timeout:阻塞时刻(单元:秒)

下面我们看一下该呼吁的具体行使。

列表为空:假如 timeout=3,则暗示客户端守候 3 秒后才气返回功效,假如 timeout=0,则暗示客户端会一向守候,也就是会阻塞。

Redis避不开的五种数据布局

因为我时代向列表中插入了元素,不然上述呼吁将一向阻塞下去。

列表不为空:假如 timeout=0,而且列表不为空时,则 blpop 和 brpop 呼吁会当即返回功效,不会阻塞。

Redis避不开的五种数据布局

下面我们看一下 blpop 和 brpop 呼吁的留意事项。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读