5.2.3Redis的数据类型 --list

2020-03-17  本文已影响0人  寒暄_HX

总目录:https://www.jianshu.com/p/e406a9bc93a9

数据库 - 子目录:https://www.jianshu.com/p/4499e57a5604

list

string类型适合存储整体有关联的数据,hash类型适合存用来交互的数据,所有存储量就受到了限制。那么有没有一种类型可以存储大量的数据的同时也很灵活呢,这就是list类型。

list类型

基础操作

-添加/修改数据
因为list类型是双向链表实现的,所以就有了左侧写入和右侧写入的区别。

lpush key value1 value2...
rpush key value1 value2...

添加

lrange key start top
lindex key index
llen key

查找1

这样就能看出,左侧插入与右侧插入的不同了,左侧插入取出后的顺序会颠倒。

查找2

-删除数据(有返回值)

lpop key
rpop key

删除

删除操作会删除链表中最后一个数据。

扩展操作

blpop key1 [ksy2] timeout
brpop key1 [key2] timeout

我们先pop一个不存在的value,过了我们设置的5s后,报错,中止操作。
然后我们再pop一下,但是给他设置一个稍微长一些的时间,然后再另一个命令行内push进去一个值,这样本来的命令行就会取到value,返回取到的值并删除。

示意

lrem key count value

示意
其他使用方式

注意事项

应用场景1

日志消息队列
公司内会有很多集群,每时每刻在产生格式不同的各类日志,但是突然集群宕机了,运维就需要去阅读日志,找出错误。
一般情况下日志都在各自集群内保存着,但是这样的话阅读起来阻碍很多,所以就需要一个统一的东西来保存所有的日志。

解决方案

上一篇 下一篇

猜你喜欢

热点阅读