redis数据结构以及性能原理

这篇具有很好参考价值的文章主要介绍了redis数据结构以及性能原理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. redis数据类型
    1. String
    2. hash
    3. list
    4. set
    5. zset
  2. 各个数据类型使用场景
    1. String:token,标识等的存储
    2. hash:对象存储
    3. list:栈(FILO-先进后出),队列:(FIFO-先进先出),阻塞队列等
    4. set:关系网,点赞
    5. zset:排行,时间段时间内排行汇总
  3. redis单线程高可用
    1. 单线程指当在执行命令时是按照单线程去执行的命令
    2. redis处理多客户端连接使用NIO(异步非阻塞io)多路复用,先建立连接,之后由文件事件分派器将执行的命令发送给命令请求处理器,此时按照单线程执行
  4. redis渐进式便利
    1. scan命令
  5. redis持久化
    1. RDB:快照模式,在某一时刻把所有数据写入磁盘,生成的文件存储在当前目录下,生成dump.rdb文件,目录可修改,再redis.conf中修改。
      1. 持久化save命令:save命令会导致所有的操作阻塞
      2. 持久化bgsave命令:该命令不会导致持久化快照文件时操作阻塞,为异步方法;该命令有一个COW-copy on write(写时复制)机制,当执行了bgsave命令之后,会新开一个进程去生成RDB文件,此时如果有新的操作命令进来修改数据,那么会同时修改复制出来的rdb文件中的数据。
    2. AOF:redis-conf文件中appendonly 可以开启AOF持久化,可配置为指定的方式持久化
      1. always:每进行一次数据操作,就将数据写入磁盘文件中
      2. everysec:设置时间,比如每秒执行一次
      3. no:从不主动发起持久化,数据交给操作系统来处理,更快但更不安全
    3. 优缺点:AOF更安全,RDB更快,体积更小(二进制存储)
    4. 默认开启:RDB
    5. 混合模式:两个模式都开启之后,之前的数据会生成rdb格式,写入到appendonly.aof文件中,后面再执行的命令会以appendonly.aof的形式,追加到AOF文件中

文章来源地址https://www.toymoban.com/news/detail-476024.html

到了这里,关于redis数据结构以及性能原理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Redis的数据类型及对应的数据结构(二)

    接上篇:Redis的数据类型及对应的数据结构(一)_鱼跃鹰飞的博客-CSDN博客 本篇主要讨论剩下的几种数据结构的应用场景 应用场景 集合的主要几个特性,无序、不可重复、支持并交差等操作。 因此 Set 类型比较适合用来数据去重和保障数据的唯一性,还可以用来统计多个集

    2024年02月10日
    浏览(72)
  • Redis数据结构:Hash类型全面解析

    Redis,作为一个开源的、内存中的数据结构存储系统,以其出色的性能和灵活的数据类型,广泛应用于缓存、消息队列、发布订阅系统等多种场景。在 Redis 的五种基本数据类型中,Hash 类型是一种非常重要的数据类型。它可以存储键值对的集合,且能够用小于1毫秒的时间复杂

    2024年02月10日
    浏览(26)
  • 深入学习 Redis - 常用数据类型,结构认识

    目录 一、Redis数据类型  Redis 数据类型结构简单认识 每个数据类型具体的编码方式 1.string  2.hash 3.list 4.set 5.zset 典中典:记数字!!! 6.查看 key 对应 value  的实际编码方式 如果本文有帮助到你,不妨给个三连吧~ Redis 中所有的 key 都是 string 类型,不同的是 value 的数据类型

    2024年02月16日
    浏览(42)
  • Redis核心数据结构实战与高性能解析

    目录 一、安装Redis 二、Redis线程与高性能 2.1 Redis是单线程么? 2.2 Redis读写是单线程为何这么快? 2.3 Redis如何处理并发操作命令? 三、核心数据结构实战 3.1 字符串常用操作实战 SET 存入键值对 SETNX SETEX MSET 批量存入键值对 MSETNX DECR 原子减1 DECRBY 原子减 INCR 原子加1 INCRBY 原子

    2024年02月07日
    浏览(38)
  • Redis常用数据结构及原理

    Redis 支持多种数据类型,每种类型都具有不同的特性和用途。以下是 Redis 中常见的数据类型: 1、基本介绍 字符串是最基本的数据类型,可以存储任意类型的数据,如文本、数字或序列化对象。可以使用字符串相关的命令对其进行操作,如 设置值(SET)、获取值(GET)、增

    2024年02月16日
    浏览(74)
  • Redis数据结构应用场景及原理分析

    目录 一、Redis介绍 二、应用场景  2.1 String应用场景  2.2 Hash应用场景   2.3 List应用场景 2.4 Set应用场景  2.5 Zset应用场景  单线程 多路复用 底层数据结构:全局哈希表(key-value) 单值缓存 set key value get key  对象缓存 set user:1 userJson(Json格式数据) 分布式锁 set product:1 true

    2024年02月10日
    浏览(25)
  • 【redis】redis的5种数据结构及其底层实现原理

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(无序集合)及zset(有序集合)。 在秒杀项目里,我用过redis的Set和Hash结构: String:一个 key 对应一个字符串,string是Redis 最基本的数据类型。(字节的abase框架只实现了redis的string数据结构,导致我们如

    2024年02月09日
    浏览(62)
  • 【redis】redis获取hash结构的海量数据,hgetAll、hscan、hkeys 性能大比拼

    根据上一篇文章:【Redis】 redis hash getKey getValue 两个的性能差别 我们知道hgetAll的性能是极差的,然后我们优化成hkeys的,但是hkeys真的好吗? 下面我们来说一下我们的现场,就是现场我们

    2024年01月22日
    浏览(21)
  • Redis常见数据结构以及使用场景分别是什么

      String String数据结构是简单的key-value类型,value其实不仅可以是String,也可以是数字。 常规key-value缓存应用; 常规计数:微博数,粉丝数等。 #Hash Hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象,后续操作的时候,你可以直接仅 仅修改这个对象中

    2024年01月23日
    浏览(30)
  • 深度剖析Redis九种数据结构实现原理,建议收藏

    Redis 是一个高性能的键值存储系统,支持多种数据结构。 包含五种基本类型 String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),和三种特殊类型 Geo(地理位置)、HyperLogLog(基数统计)、Bitmaps(位图)。 每种数据结构都是为了解决特定问题而设计

    2023年04月11日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包