解析Redis的缓存类型

 更新时间:2023年06月26日 14:52:26   作者:惠惠软件  
本文主要介绍了Redis的缓存类型,主要介绍了4种缓存,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

HashMap/ConcurrentHashMap

HashMap 是一种基于哈希表的集合类,它提供了快速的插入、查找和删除操作。是很多程序员接触的第一种缓存 , 因为现实业务场景里,我们可能需要给缓存添加缓存统计过期失效淘汰策略等功能,HashMap 的功能就显得弱。

 Broker 与 Name Server 集群中的所有节点建立长连接,定时每隔 30 秒注册 主题的路由信息到所有 Name Server。

Name Server 集群的作用就是注册中心,注册中心会保存路由信息(主题的读写队列数、操作权限等),路由信息就是保存在 HashMap 中 。

LinkedHashMap 缓存

LinkedHashMap 是 HashMap 的子类, 支持两种顺序插入顺序 、 访问顺序

TreeMap缓存

TreeMap 是基于红黑树的有序 Map,它可以按照键的顺序进行遍历。 在一致性哈希中可以用作节点/虚拟节点的存储结构,用来维护节点在哈希环上的位置和键的有序性。

ByteBuffer 缓存

ByteBuffer 是字节缓冲区,主要用于用户读取和缓存字节数据,在网络编程里,经常需要分配内存,在高并发场景下,性能压力比较大。Cobar 抽象了一个 NIOProcessor 类用来处理网络请求,每个处理器初始化的时候都会创建一个缓冲池 BufferPool 。

以上四种缓存:HashMap/ConcurrentHashMap 经常用于配置缓存,对于 HashMap 来讲,HashMap + 读写锁 + 定时任务更新是常用的模式。LinkedHashMap 经常被用于创建最近最少使用缓存 LruCache ,使用责任链装饰器的设计模式,内置 LruCache 的实现就是使用 LinkedHashMap 。TreeMap 是一种基于红黑树的有序 Map 。TreeMap 在一致性哈希中可以用作节点/虚拟节点的存储结构。ByteBuffer 主要用于用户读取和缓存字节数据,多用于网络编程、文件 IO 处理等。以上希望大家在使用过程中注意!

到此这篇关于解析Redis的缓存类型的文章就介绍到这了,更多相关Redis 缓存 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux下安装Redis 6.0.5的实现

    Linux下安装Redis 6.0.5的实现

    本文详细介绍了在Linux系统下安装Redis 6.0.5的步骤,包括安装准备、编译安装、启动服务、设置密码和配置文件修改等,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • Redis之ZipList压缩列表的使用

    Redis之ZipList压缩列表的使用

    这篇文章主要介绍了Redis之ZipList压缩列表的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • Redis分片集群的实现示例

    Redis分片集群的实现示例

    本文介绍了搭建Redis分片集群,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • redis实现延迟任务的项目实践

    redis实现延迟任务的项目实践

    本文主要介绍了redis实现延迟任务的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • RedisDesktopManager远程连接redis的实现

    RedisDesktopManager远程连接redis的实现

    本文主要介绍了RedisDesktopManager远程连接redis的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • redis的底层数据结构详解

    redis的底层数据结构详解

    Redis性能高得益于其优化的数据结构,Redis的数据结构分为对外暴露的和内部底层的两种,对外暴露的数据结构包括String、list、hash、set、zset等,而内部底层的数据结构则包括SDS、hashtable、ziplist、linkedlist、quicklist、intset、skiplist等
    2025-02-02
  • Linux下安装Redis并设置相关服务

    Linux下安装Redis并设置相关服务

    这篇文章主要为大家介绍了Linux下安装Redis并设置相关服务,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • Redis在Ubuntu系统上无法启动的问题排查

    Redis在Ubuntu系统上无法启动的问题排查

    这篇文章主要介绍了Redis在Ubuntu系统上无法启动的问题排查,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-08-08
  • Redis中RedisSearch使用及应用场景

    Redis中RedisSearch使用及应用场景

    RedisSearch是一个强大的全文搜索和索引模块,可以为Redis添加高效的搜索功能,下面就来介绍一下RedisSearch使用及应用场景,感兴趣的可以了解一下
    2025-05-05
  • 面试常问:如何保证Redis缓存和数据库的数据一致性

    面试常问:如何保证Redis缓存和数据库的数据一致性

    在实际开发过程中,缓存的使用频率是非常高的,只要使用缓存和数据库存储,就难免会出现双写时数据一致性的问题,那我们又该如何解决呢
    2021-09-09

最新评论