Redis 面试要点

1、redis单线程问题

Redis 单线程模型是采用多路 I/O 复用技术可以让单个线程高效的处理多个连接请求(尽量减少网络IO的时间消耗) 。

参考:Redis 单线程模型

2、为什么说redis能够快速执行

2.1官方FAQ表示,因为Redis是基于内存的操作,CPU不是Redis的瓶颈,Redis的瓶颈最有可能是机器内存的大小或者网络带宽。

2.2单线程避免了线程切换和竞态产生的消耗,对于服务端开发来说,锁和线程切换通常是性能杀手。

3、Redis有哪些好用

  • 3.1速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)。
  • 3.2支持丰富数据类型,支持string,list,set,sorted set,hash。
  • 3.3丰富的特性:可用于缓存,消息,队列,自增自减,按key设置过期时间,过期后将会自动删除。
  • 3.4支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行。(影响性能)

4、Redis相比memcached有哪些优势

  • 4.1memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型。
  • 4.2redis的速度比memcached快很多。
  • 4.3 redis可以持久化其数据。
  • 4.4Redis支持数据的备份,即master-slave模式的数据备份。
  • 4.5value大小:redis最大可以达到1GB,而memcache只有1MB

Copyright © 2019-2019主引教程mainboot.com All Rights Reserved. 备案号: 闽ICP备13019624号-4