Redis 列表(List)

Redis 列表(List)

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)

一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

 

list类型其实就是一个双向链表。通过push,pop操作从链表的头部或者尾部添加删除元素。

这使得list既可以用作栈,也可以用作队列。

上进上出 (下进下出)

上进下出 (下进上出)

 

 

list链表类型应用场合:

获得最新的10个登录用户息:

 

select * from user order by logintime desc limit 10;

以上sql语句可以实现用户需求,但是数据多的时候,全部数据都要受到影响查询,对数据库的负载比较高。必要情况还需要给关键字段(id或logintime)设置索引,索引也比较耗费系统资源

如果通过list链表实现以上功能,可以在list链表中只保留最新的10个数据,每进来一个新数据就删除一个旧数据。链表内部只保留最新登录系统的10个用户信息。每次就可以从链表中直接获得需要的数据。极大节省各方面资源消耗。

 

  

通过list链表保存登录系统的最新5个用户信息:

 

→  A   B   C    D   E

 

 

操作

 lpush key string

在key对应1ist的头部添加字符串元素

 

 rpop ke

从1ist的尾部胎除元素,并返回删除元素

 

llen keu返回key

对应1ist的长度,key不存在返回0,如果key对应类型不是1ist返回错误

 

range key start end

返回指定区间内的元素,下标从0开始

 

roush key string

同上,在尾部添加

 

lpop key

从1ist的头部用除元素,并返回删除元素

 

trin key start end截取1ist,保留指定区间内元素

 

 

实例

 

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-25 18:02
来组里2个月了,天天让打杂,写的代码不超过200行。现在已经开始摆烂冲秋招了。我感觉4个月,就算周六日全天睡觉,周一到周五一直看黑马也比我来节子实习学到的东西多。
小熊梦奇:😅节子那么多文档,你是一个都不看啊。 大厂的意义在于内部系统对你开放,看明白事情起因经过结果解决措施,实在看不明白,直接聊天系统搜到对应团队去问当时的负责人,大部分情况下都会给你解答。 这才是大厂实习的精髓
实习生的蛐蛐区
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务