课程名称:剑指Java面试-Offer直通车 百度资深面试官授课
课程章节:
第4章 Redis
主讲老师:翔仔
课程内容:
Redis的优势特点以及大企业相关面试题
课程收获:
1、 缓存中间件-Memcache和Redis的区别
Memcache:代码层次类似Hash
1)、支持简单数据类型
2)、不支持数据持久化存储
3)、不支持主从
4)、不支持分片
redis作为缓存层使用
特性:1).数据类型丰富 2).支持数据磁盘持久化存储 3).支持主从 4).支持分片
问题1:为什么redis这么快?100000+QPS 每秒查询次数
1)、完全基于内存,不受硬盘io限制
2)、数据结构简单,数据操作简单,没有表就是操作键值对
3)、采用单线程,所有读写都由一个主线程串行处理,单线程也能处理高并发,特殊情况多核使用多个redis也是可以的
4)、io多路复用模型,非阻塞io
2、redis怎么选择多路复用函数:epoll/kqueue/evport/select?
1).根据编译平台不同因地制宜的选择
2).优先选择时间复杂度为O(1)的复用函数作为底层
3).以时间复杂度为O(n)的select作为保底(select扫描全部)
4) .基于react设计模式监听IO事件
3、常用数据类型