猿始大猩猩之Redis
Redis
猿始大猩猩
这个作者很懒,什么都没留下…
展开
-
Redis线程模型、单线程快的原因
Redis基于Reactor模式开发了网络事件处理器,这个处理器叫做文件事件处理器 file event handler。这个文件事件处理器,它是单线程的,所以 Redis 才叫做单线程的模型,它采用IO多路复用机制来同时监听多个Socket,根据Socket上的事件类型来选择对应的事件处理器来处理这个事件。可以实现高性能的网络通信模型,又可以跟内部其他单线程的模块进行对接,保证了 Redis 内部的线程模型的简单性。文件事件处理器的结构包含4个部分:多个Socket、IO多路复用程序、文件事件分派原创 2022-04-12 23:33:45 · 229 阅读 · 0 评论 -
(Redis)哨兵模式实现原理?(2.8 版本或更高才有)
1.三个定时监控任务:1.1 每隔 10s,每个 S 节点(哨兵节点)会向主节点和从节点发送 info 命令获取最新的拓扑结构1.2 每隔 2s,每个 S 节点会向某频道上发送该 S 节点对于主节点的判断以及当前 Sl 节点的信息,同时每个 Sentinel 节点也会订阅该频道,来了解其他 S 节点以及它们对主节点的判断(做客观下线依据)1.3 每隔 1s,每个 S 节点会向主节点、从节点、其余 S 节点发送一条 ping 命令做一次心跳检测(心跳检测机制),来确认这些节点当前是否可达2.主客观下线原创 2022-04-12 21:55:01 · 392 阅读 · 0 评论 -
(Redis)主从复制模式下,主挂了怎么办?
redis 提供了哨兵模式(高可用)何谓哨兵模式?就是通过哨兵节点进行自主监控主从节点以及其他哨兵节点,发现主节点故障时自主进行故障转移。原创 2022-04-12 21:53:05 · 1382 阅读 · 0 评论 -
redis 能否将数据持久化,如何实现?
答:能,将内存中的数据异步写入硬盘中,两种方式:RDB(默认)和 AOFRDB 持久化原理:通过 bgsave 命令触发,然后父进程执行 fork 操作创建子进程,子进程创建 RDB 文件,根据父进程内存生成临时快照文件,完成后对原有文件进行原子替换(定时一次性将所有数据进行快照生成一份副本存储在硬盘中)优点:是一个紧凑压缩的二进制文件,Redis 加载 RDB 恢复数据远远快于 AOF的方式。缺点:由于每次生成 RDB 开销较大,非实时持久化,AOF 持久化原理:开启后,Redis 每执行一个原创 2022-04-12 21:51:53 · 632 阅读 · 0 评论 -
为什么 redis 是单线程的都那么快?
1.数据存于内存2.用了多路复用 I/O3.单线程原创 2022-04-12 21:48:23 · 201 阅读 · 0 评论 -
redis各类型的使用场景
redis 的数据结构: String(字符串)、Hash(哈希)、List(列表)、Set(集合)、zset(有序集合)一、String(字符串)简介String 类型是 Redis 中最基本、最常用的数据类型,甚至被很多玩家当成 Redis 唯一的数据类型去使用。String 类型在 Redis 中是二进制安全(binary safe)的,这意味着 String 值关心二进制的字符串,不关心具体格式,你可以用它存储 json 格式或 JPEG 图片格式的字符串。2、内部编码如果存储数字的话转载 2022-04-12 21:47:43 · 375 阅读 · 0 评论