Redis 数据结构的底层实现      Redis的性能瓶颈 在于CPU资源, 在于内存访问和 络IO。 采 单线程的设计带来的好处是,极 简化 数据结构和算法的实现。相反,Redis通过异步IO 和pipelining等机制来实现 速的并发访问。显然,单线程的设计,对于单个请求的快速响应时 间也提出 的要求。一 Dict 1. 结构  &nbs
Redis 第三章 Redis功能实现机制及部署结构4. Redis功能实现机制4.1 持久化(1)RDB(Redis DataBase)(2)AOF(Append Only File,重点)(3)RDB与AOF对比4.2 事务4.3 发布与订阅4.4 集群4.5 排序4.6 事件5. 探讨 Redis与Memcached比较6.Redis运维6.1运维常用的server端命令6.2运维时的
转载 2023-09-18 22:18:25
50阅读
RDB普通的八股不多说,说说使用bgsave后快照到底如何实现持久化并且还能继续提供服务。bgsave会调用fork出一个子进程,那子进程要如何获取父进程的数据?其实就是进程通信中的内存映射,将子进程的逻辑内存与父进程的逻辑内存映射到同一块物理内存。但是如果父进程更改了数据怎么办?在父进程修改的内存页(linux页4kb)内核才会将要更改的内存页实际拷贝到子进程里,他把拷贝延迟到实际需要拷贝的时候
转载 2024-02-04 00:56:54
45阅读
一、什么是Redis事务Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化,按顺序执行。事务在执行过程中,不会被其他客户端发送来的命令和请求锁打断。Redis事务的主要作用就是串联多个命令防止别的命令插队。二、Multi(开启事务)、Exec(执行事务)、discard(放弃事务)从输入Multi命令之后,输入的命令都会依次进入到命令队列当中,但是不会执行,知道输入Exec后,Redi
转载 2023-08-11 10:48:08
41阅读
1:redis持久化机制(Redis为持久化提供了两种方式)RDB:在指定的时间间隔能对你的数据进行快照存储。AOF:记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据。2:redis的三种机制redis的三种模式 主从模式(redis2.8版本之前的模式)、哨兵sentinel模式(redis2.8及之后的模式)、redis cluster模式(redis3.0版本之
转载 2023-06-29 13:58:47
28阅读
分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。 分布式锁:线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(stat
转载 2023-08-15 18:24:12
181阅读
未雨绸缪一一持久化Redis 的持久化机制为了保证 Redis 的数据不会因为故障而丢失,分别有两种机制:第一种是快照,第二种是 AOF 日志。快照是一次全量备份, AOF 日志是连续的增量备份。快照是内存数据的二进制序列化形式,在存储上非常紧凑,而 AOF 日志记录的是内存数据修改的指令记录文本。快照原理为了不阻塞线上的业务, Redis 就需要一边持久化,一边响应客户端的请求。Redis 使用
转载 2023-11-19 09:29:19
90阅读
1 悲观锁执行操作前假设当前的操作肯定(或有很大几率)会被打断(悲观)。基于这个假设,我们在做操作前就会把相关资源锁定,不允许自己执行期间有其他操作干扰。Redis不支持悲观锁。Redis作为缓存服务器使用时,以读操作为主,很少写操作,相应的操作被打断的几率较少。不采用悲观锁是为了防止降低性能。2 乐观锁执行操作前假设当前操作不会被打断(乐观)。基于这个假设,我们在做操作前不会锁定资源,万一发生了
转载 2023-09-01 23:12:38
148阅读
本篇重点谈一谈自己对AOF重写的理解,不讲代码!不讲代码!!不讲代码!!!因为redis是内存型的nosql数据库,所以对于数据的安全问题必须要考虑,redis支持将数据持久化的磁盘。redis的持久化方式有两种——RDB和AOF。对于RDB,简单提一句,通俗的说它就是一个快照(备份)机制,在某时刻redis会产生一个父进程的副本(快照),并由子进程将快照写入临时文件,这种方式看起来非常简单粗暴,
转载 2023-08-09 21:55:40
72阅读
一、什么是哨兵机制?1.1、为什么需要哨兵机制前面章节实现了主从复制,但是主从复制有一个最大的问题:如果一个主服务器宕机了,不能继续提供服务,需要手动的重启服务,或者将一个从节点晋升为主节点,并且需要通知其他的应用更新节点。自动redis2.8开始,引进了哨兵机制,将故障转移的处理方式转变为自动化处理。1.2、Redis哨兵主要功能(1)集群监控:负责监控Redis master和slave进程是
一.Redis存储机制分为:1.shupshot(定时快照方式),文件名为dump.rdb,你可以配置redis的持久化策略,例如每N秒钟有超过M次更新,就将数据写入磁盘,或者可以手动调用SAVE。2.AOF:基于语句追加log文件的方式两者比较:快照方式性能明显高于AOF方式,但AOF数据的安全性高于快照方式,快照方式时,如果长时间不写入RDB,但Redis又遇到崩溃,那么没有写入的数据就无法回
转载 2023-05-26 17:42:10
66阅读
Redis 内存回收机制Redis 的内存回收主要围绕以下两个方面:1.Redis 过期策略:删除过期时间的 key 值2.Redis 淘汰策略:内存使用到达 maxmemory 上限时触发内存淘汰数据Redis 的过期策略和内存淘汰策略不是一件事,实际研发中不要弄混淆了,下面会完整的介绍两者。Redis过期策略过期策略通常有以下三种:1.定时过期每个设置过期时间的 key 都需要创建一个定时器,
转载 2024-02-02 10:39:03
65阅读
本文包含三部分,分别介绍Redis内存回收,过期策略和淘汰机制。一、Redis内存回收机制Redis的内存回收主要两个部分:(1)Redis过期策略删除超过过期时间的Redis数据。(2)Redis淘汰策略当内存使用到达最大内存(maxmemory)上限时触发内存淘汰策略。注意:Redis的过期策略和内存淘汰策略不是一回事,实际开发中不能混淆。二、Redis过期策略过期策略包含定时过期,惰性过期和
转载 2023-08-31 08:29:52
85阅读
Redis缓存是一种常用的缓存技术,可以提高系统性能和响应速度。然而,如果不采取适当的过期策略,缓存可能会占据大量内存,并且数据也可能会过期并失效。一、Redis缓存过期策略的基础知识了解Redis缓存过期策略的前提是必须掌握Redis内存模型以及数据结构,在此我们不再赘述。Redis缓存过期策略的核心思想是根据key的过期时间来决定key是否被删除的。当一个key的过期时间到达指定时间后,Red
转载 2023-08-04 15:18:10
719阅读
Redis缓存篇(一)Redis是如何工作的 Redis提供了高性能的数据存取功能,所以广泛应用在缓存场景中,既能有效地提升业务应用的响应速度,还可以避免把高并发压力发送到数据库层。因为Redis用作缓存的普遍性以及它在业务应用中的重要作用,所以需要系统地掌握缓存的一系列内容,包括工作原理、替换策略、异常处理和扩展机制。今天我们了解缓存的特征和Redis缓存的工作机制。缓存特征 主要有两个特征:
转载 2023-07-07 15:47:29
85阅读
Redis哨兵机制:保障高可用性的守护者在现代分布式系统中,高可用性是至关重要的。Redis作为一个高性能的内存数据库,也需要确保在发生故障时能够保持可用。为了实现这一目标,Redis引入了哨兵机制,这是一个监控和管理Redis实例的分布式系统。本文将深入探讨Redis哨兵机制的工作原理、角色和应用。1. 理解Redis哨兵Redis哨兵是一个独立的进程,负责监控运行中的Redis主从实例。其核心
原创 2023-08-10 16:45:51
77阅读
Master以写为主,Slaver以读为主。Master/Slaver机制。作用读写分离,容灾恢复。
原创 2022-12-07 16:19:28
80阅读
在主从复制那里,还存在一个问题,如果主节点出现问题了不能提供服务,那么就需要人工进行主动切换,同时大量的客户端需要被通知切换到新的主节点上,也无法提前知道主节点什么时候回出现问题,这样的操作显然是不可行的,哨兵机制就是解决这个问题的。哨兵节点是一个单独的 Redis 服务器进程,会不断检查主节点和从节点的运行状态,通过向节点发送 PING 命令来判断节点是否可达。它会定期检查主节点和从节点的健康状
原创 7月前
66阅读
### Redis Pipeline 机制 #### 简介 Redis 是一款高性能的键值存储数据库,支持多种数据结构,如字符串、哈希、列表、集合等。它提供了丰富的命令集合,可以在内存中快速操作数据。Redis Pipeline 是 Redis 提供的一种机制,用于优化批量操作的性能。 #### 什么是 Redis Pipeline Redis Pipeline 是一种将多个命令一次性发送给
原创 2023-08-13 08:02:44
70阅读
# Redis 保存机制详解 Redis 是一个开源的高性能键值对存储系统,因其高效性和可靠性被广泛应用于缓存、实时分析等场景。本文将深入探讨 Redis 的保存机制,包括其工作原理、主要的持久化方式,并配合代码示例进行说明。 ## Redis 的持久化策略 Redis 提供了两种主要的持久化机制: 1. **RDB(Redis Database Backup)**:以快照方式将 Redi
原创 2024-08-23 03:50:47
31阅读
  • 1
  • 2
  • 3
  • 4
  • 5