一、考点聚焦
缓存的使用场景;Redis
的使用;缓存使用中的坑
1.为什么要使用缓存?使用场景?
2.Redis
的常用数据类型,使用方式
3.缓存使用问题:数据一致性问题;缓存穿透、击穿、雪崩问题
二、什么是缓存?为什么要使用缓存?
本章主要讨论的是内存缓存(常见的有Redis
和Memcached
)
1.缓解关系数据库(常见的是Mysql
)并发访问的压力:热点数据
2.减少响应时间:内存IO
速度比磁盘快
3.提升吞吐量:Redis
等内存数据库单机就可以支撑很大并发
操作时间对比:
操作 | 响应时间 |
---|---|
打开一个网站 | 几秒 |
在数据库中查询一条记录(有索引) | 十几毫秒 |
机械苏特给次寻址定位 | 4 毫秒 |
从机械磁盘顺序读取1MB 数据 |
2 毫秒 |
从SSD 磁盘顺序读取1MB 数据 |
0.3 毫秒 |
从远程分布式缓存Redis 读取一个数据 |
0.5 毫秒 |
从内存中读取1MB 数据 |
十几微秒 |
Java 程序本地方法调用 |
几微秒 |
网络传输2KB 数据 |
1 |