Redis-为什么要用缓存

Redis-为什么要用缓存

为什么要用缓存?

单机MySQL时,数据量不大的情况下,单个MySQL即可应付

image-20200802160400592

瓶颈:

  • 数据量太大一个mysql放不下
  • 当数据量超过300w时,必须建立索引,索引太大,一个机器放不下
  • 访问量上去了,一个服务器承受不了

数据库读写分离

在这里插入图片描述

缺陷:

  • 针对相同的查询,不应该反复查询数据库,访问量增大,数据库磁盘IO压力也随着增大

加缓存层,减轻读数据库的压力

在这里插入图片描述

分库分表+MySQL集群

上面加了缓存和数据库读写分离后,其实数据库现在已经从库是集群部署了,但是写库即我们的主库还是单机的,加了缓存后,数据库读的压力可以分摊了,但是一旦写压力上来了,主库还是承受不住的

  • 像早期的数据库使用的myisam引擎,在写数据库的时候,使用的是表锁,十分影响效率

在这里插入图片描述
使用缓存可以有效的减轻读压力,将更多的请求在缓存层面完成,减少对后端数据库的访问。

什么是Redis

什么是Redis?

Redis是一个开源的使用ANSI c语言编写的,支持网络,可基于内存也可以持久化的日志型,k-v数据库,也被称为结构化数据库

Redis能干嘛?

  • 内存存储,持久化(aof,rdb)
  • 效率高,可用于高速缓存
  • 发布订阅系统
  • 计数器,计时器
  • 地理地图分析

猜你喜欢

转载自blog.csdn.net/weixin_41922289/article/details/107753763