Redis中List实现双链表

 更新时间:2023年06月08日 11:28:12   作者:藤椅不再坐着  
本文主要介绍了Redis中List实现双链表,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

概述:

Redis中的list类型与java中的LinkedList集合类似,可以看作是一个双向的链表结构,既可以支持正向的检索,也可以支持反向的检索

特征:(与LinkedList类似)

1.有序

2.元素可以重复

3.插入与删除一样快

4.查询速度一般(遍历所有节点来查询)

常用来储存一有序的数据,例如:朋友圈点赞列表,评论列表,等..........

List常见命令

1.Lpush key element.....:向列表左侧插入一个或多个元素

2.LPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

3.RPUSH key element...:向列表右侧插入一个或多个元素

4.RPOP key :移除并返回列表左侧的第一个元素

5.LRANGE key star end:返回一段角标范围内的所有元素

6.BLPOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素是等待指定时间,而不是直接返回nil

1.Lpush key element.....:向列表左侧插入一个或多个元素

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

 2.LPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

3.RPUSH key element...:向列表右侧插入一个或多个元素

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

4.RPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

5.LRANGE key star end:返回一段角标范围内的所有元素

(1)新添加数据

(2)在命令行里面写入数据

6.BLPOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素是等待指定时间,而不是直接返回nil

(1)在命令行里面写入数据(代表了在100秒之内如果发现就执行操作,否则一直堵塞在这里)

(2)新开一个cmd写入数据

(3)效果

遗留下的问题:

如何用List结构模拟出一个栈?

--入口与出口在一起(Lpush与Lpop,Rpush与Rpop)

如何利用List结构模拟出一个队列?

--入口与出口不在一起(Lpush与Rpop,Rpush与Lpop)

如何利用List结构模拟一个阻塞队列?

--也是队列,即入口与出口不在一起(Lpush与BRpop,Rpush与BLpop)

--出队的时候采用(BRpop,BLpop)

到此这篇关于Redis中List实现双链表的文章就介绍到这了,更多相关Redis List双链表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • 异步redis队列实现 数据入库的方法

    异步redis队列实现 数据入库的方法

    今天小编就为大家分享一篇异步redis队列实现 数据入库的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Redis为什么选择单线程?Redis为什么这么快?

    Redis为什么选择单线程?Redis为什么这么快?

    这篇文章主要介绍了Redis为什么选择单线程?Redis为什么这么快?的相关资料,需要的朋友可以参考下
    2023-03-03
  • 如何操作Redis和zookeeper实现分布式锁

    如何操作Redis和zookeeper实现分布式锁

    这篇文章主要介绍了如何操作Redis和zookeeper实现分布式锁的相关资料,需要的朋友可以参考下
    2017-07-07
  • Redis 命令的详解及简单实例

    Redis 命令的详解及简单实例

    这篇文章主要介绍了Redis 命令的详解及简单实例的相关资料,这里提供基础语法及使用实例,需要的朋友可以参考下
    2017-08-08
  • 深入浅析Redis 集群伸缩原理

    深入浅析Redis 集群伸缩原理

    Redis 集群提供了灵活的节点扩容和收缩方案。在不影响集群对外服务的情况下,可以为集群添加节点进行扩容,也可以下线部分节点进行缩容,接下来通过本文给大家分享Redis 集群伸缩原理,感兴趣的朋友一起看看吧
    2021-05-05
  • redis中opsForList().range()的使用方法详解

    redis中opsForList().range()的使用方法详解

    这篇文章主要给大家介绍了关于redis中opsForList().range()的使用方法,文中通过实例代码以及图文介绍的非常详细,对大家学习或者使用redis具有一定的参考学习价值,需要的朋友可以参考下
    2023-03-03
  • redis分布式锁解决缓存双写一致性

    redis分布式锁解决缓存双写一致性

    这篇文章主要为大家介绍了redis分布式锁解决缓存双写一致性示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • 浅谈Redis中的RDB快照

    浅谈Redis中的RDB快照

    虽说Redis是内存数据库,但是它为数据的持久化提供了两个技术,分别是AOF日志和RDB快照。这两种技术都会用各用一个日志文件来记录信息,但是记录的内容是不同的。AOF 文件的内容是操作命令; RDB 文件的内容是二进制数据。本文将讨论RDB快照的原理和使用
    2021-06-06
  • RedisTemplate的使用与注意事项小结

    RedisTemplate的使用与注意事项小结

    本文详细介绍了RedisTemplate的用途和使用方法,RedisTemplate是Spring提供的一个工具类,用于操作Redis数据库,其API提供了丰富的方法来实现对Redis各种操作,本文就来详细的介绍一下,感兴趣的可以来了解一下
    2024-10-10
  • AOP Redis自定义注解实现细粒度接口IP访问限制

    AOP Redis自定义注解实现细粒度接口IP访问限制

    这篇文章主要为大家介绍了AOP Redis自定义注解实现细粒度接口IP访问限制,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10

最新评论