目录
一、高性能
二、高并发
三、常见弊端
高性能
说到底,缓存就是把不变或者不经常变化的数据给暂存下来,在下次查询的时候就会直接取暂存的数据,这样就可以加快查询速度。
最经典的一个例子就是在系统上线之前缓存字典表,这样一来就能够避免查询数据库字典表。
高并发
缓存是基于内存的,MySQL数据库是基于磁盘的,因此它们的查询速度相差甚大。基于内存的会非常快,因此可以支持高并发。经典的Redis缓存就是基于内存的。
MySQL单机大概每秒能撑得住2000并发,如果高峰期一秒钟过来1万的请求,那么MySQL基本上就宕机了。但是接了缓存,把很多请求直接走缓存,那么就能够支持高并发场景。
为了支持高并发,一般是可以一次使用多级缓存。一种是使用服务器本机内存来做缓存,并支持使用Redis作为分布式缓存。
常见弊端
缓存与数据库双写不一致
缓存穿透、缓存击穿、缓存雪崩
系统可用性降低、复杂度升高