1.为什么要使用Mysql和Redis:

数据通常是由后端处理的,而后端一般把数据存储在一个变量里面,也就是计算机内存当中,如果计算机出现问题可能会导致系统崩溃,mysql则把数据存储在磁盘上,可以确保数据的持久性,即使系统重启或发生故障,数据也不会丢失。
但是在一些高并发的场景下,或者千万级的数据量中,mysql会有一定的压力,而且mysql会有一个连接池机制,用户量庞大的话会触发这个机制,可能会造成阻塞,对于用户而言,体验并不好,这个时候如果把这些数据也写入redis的话,则可以减轻mysql的压力,提升访问速度

2.Redis与Mysql的区别:

  • Redis和Mysql通常都可以用于存储服务的数据,作为后端的一个数据源来使用,但在存储的方式上却有不同:
    redis是把数据存储在内存中,所以读写速度更快,适和一些高速访问的场景
    mysql是把数据存储在磁盘中,比起redis会具有稳定性和可靠性
  • 类型上:
    redis是非关系型数据库 数据结构是b.json
    mysql是关系型数据库
    所以redis更适合用于缓存、会话存储、热点数据,而Mysql适合用于需要持久存储的数据,如用户订单、支付信息等

3.Mysql和Redis的应用场景:

1.一般用户的身份信息存储到Redis中
2.大量数据交互的情况下,可以通过redis减轻mysql的压力,如下图:
image-1731743488535
用户下单后,这条订单信息可以存储到mysql,在存储到redis,当用户再次查询该订单时,后端服务先去通过redis查询,如果查询到就可以返回给客户端,不用在查询mysql,这个时候就可以减轻mysql的一个压力