
Redis面试
文章平均质量分 81
丢丢diu丢
CSDN,做笔记用的……
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Redis——单线程模型、IO多路复用技术
1.单线程模型 Redis 单线程指的是网络请求模块使用了一个线程,即一个线程处理所有网络请求; 其他模块该使用多线程,仍会使用了多个线程。 1.结构 多个 Socket IO 多路复用程序 文件事件分派器 事件处理器(连接应答处理器、命令请求处理器、命令回复处理器) 2.实现 Redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 Redis 才叫做单线程的模型。 它采用 IO 多路复用机制同时监听多个 Socket,并把所有原创 2021-04-18 23:38:23 · 1646 阅读 · 3 评论 -
Redis+ZooKeeper—分布式锁、RedLock算法防止redis锁失效
1.什么是分布式锁? 1.分布式锁应该具备哪些条件? 1.在分布式系统环境下,一个方法在同一时间只能被一个机器的一个线程执行; 2.高可用的获取锁与释放锁; 3.高性能的获取锁与释放锁; 4.具备可重入特性(可理解为重新进入,由多于一个任务并发使用,而不必担心数据错误); 5.具备锁失效机制,防止死锁; 6.具备非阻塞锁特性,即没有获取到锁将直接返回获取锁失败。 2.分布式锁的实现 Redis:利用setnx命令,此命令同样是原子性操作,只有在key不存在时,才能set成功。 3.通过 Redis 分布原创 2021-04-18 23:22:54 · 615 阅读 · 1 评论 -
Redis—跳跃表、缓存一致性、雪崩、穿透、击穿
1.跳跃表 1.跳跃表——本质是解决查找问题 跳跃表(skiplist)是一种随机化的数据结构,是一种可以与平衡树媲美的层次化链表结构——查找、删除、添加等操作都可以在对数期望时间下完成,以下是一个典型的跳跃表例子: 有序列表 zset 的数据结构,它类似于 Java 中的 SortedSet 和 HashMap 的结合体,一方面它是一个 set 保证了内部 value 的唯一性,另一方面又可以给每个 value 赋予一个排序的权重值 score,来达到 排序 的目的。 有序列表 zset的内部原创 2021-04-18 22:09:26 · 462 阅读 · 0 评论 -
Redis面试——redis基础、5种数据类型、持久化、主从模式、哨兵
问题目录 1.5种基本数据类型 2.分布式锁 3.缓存一致性 4.缓存穿透、击穿、雪崩 5.跳表 1.Redis前言 1.纯内存访问 Redis将所有数据放在内存中,非数据同步正常工作中,是不需要从磁盘读取数据的,0次IO。Redis就是用C语言开发的,所以执行会比较快。 2.单线程 优点 第一,单线程简化算法的实现,并发的数据结构实现不但困难且测试也麻烦。 第二,单线程避免了线程切换以及加锁释放锁带来的消耗,对于服务端开发来说,锁和线程切换通常是性能杀手。 缺点 单线程也会有它的缺点,:阻塞。如果执行一.原创 2021-04-18 21:02:22 · 481 阅读 · 0 评论