版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36520235/article/details/88753697
面试题1. 知道redis为什么这么快吗?
- 首先它是基于单线程的模型,保证了每次操作的原子性,同时也减少了线程上下文之间的切换和竞争。
- 然后它的IO是采用了多路复用的IO模型来实现的,
- 然后是他是基于内存数据库来进行存和读取数据的。
- 另外,数据结构也帮了不少忙,Redis全程使用hash结构,读取速度快,还有一些特殊的数据结构,对数据存储进行了优化,如压缩表,对短数据进行压缩存储,再如,跳表,使用有序的数据结构加快读取的速度
- 使用底层模型不同,它们之间底层实现方式以及与客户端之间通信的应用协议不一样,Redis直接自己构建了VM 机制 ,因为一般的系统调用系统函数的话,会浪费一定的时间去移动和请求
面试题2. 说一下Redis的持久化的方式?
AOF的持久化方式:
- List item
RDB的持久化方式:
- List item