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文件中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis数据结构的底层原理可以从两个层面来讨论。第一个层面是Redis如何通过组合不同的基础数据结构来实现更高层的数据结构。这个层面主要关注Redis数据结构之间的关系以及如何实现复杂的数据操作。 第二个层面是具体的数据结构的内部实现。每种数据结构都是经过专门设计的,并且有一种或多种数据结构来支持。这些灵活的数据结构Redis能够提供高性能的关键。 要详细了解Redis数据结构的底层原理,可以参考张铁磊的博客文章《redisObject数据结构详解》。这篇文章深入地介绍了Redis数据结构的内部实现,包括字符串、列表、哈希表、集合和有序集合等。 总的来说,Redis数据结构的底层原理是通过组合不同的基础数据结构来实现更高层的数据结构,并通过专门设计的数据结构来支持高性能的读写操作。详细的内容可以参考所提供的引用资源。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Redis的五种数据结构的底层实现原理](https://blog.csdn.net/a745233700/article/details/113449889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值