redis的一些相关知识点(2)| 青训营笔记

53 阅读2分钟

redis的一些相关知识点(2)| 青训营笔记

Redis的线程模型

redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 redis 才叫做单线程的模型。它采用 IO 多路复用机制同时监听多个 socket,根据 socket 上的事件来选择对应的事件处理器进行处理。

为什么redis是单线程的还能那么快

1.纯内存操作
2.核心是基于非阻塞的 IO 多路复用机制
3.单线程反而避免了多线程的频繁上下文切换问题

redis中缓存预热是什么

缓存预热就是系统上线后,将相关的缓存数据直接加载到缓存系统,这样可以避免在用户请求的时候,先查询数据库,然后再将数据回写到缓存。 如果不进行预热, 那么 Redis 初始状态数据为空,系统上线初期,对于高并发的流量,都会访问到数据库中, 对数据库造成流量的压力。

redis中主从复制的作用

1.数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
2.故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
3.负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务,分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。
4.高可用:主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。

Memcache与Redis的区别都有哪些?

1.存储方式

Memecache把数据全部存在内存之中,断电后会挂掉,数据不能超过内存大小。 Redis有部份存在硬盘上,这样能保证数据的持久性。

2.数据支持类型

Memcache对数据类型支持相对简单。 Redis有丰富的数据类型。

3.使用底层模型不同
它们之间底层实现方式 以及与客户端之间通信的应用协议不一样。 Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求。