【项目实践day07】为什么在使用MySQL的情况下仍然使用Redis

Redis简介

  • 非关系型数据库
  • 存储在内存中
  • 存储方式为key,value的形式,其中value可以有多种形式
    • String字符串
      • 可以将java代码中的对象信息序列化为字符串,然后存储到Redis中
      • 在从Redis中取数据的时候直接强转为一开始存入的对象类型即可
    • hash 哈希
    • list 列表
      • 可以重复
      • 按照插入顺序排序
    • set 集合
      • 无序
      • 中的元素不能重复
    • zset 有序集合
      • 不能重复
      • 但是关联一个double类型的分数,依据分数排序

mySql简介

  • 关系型数据库
  • 存储在磁盘上
  • 通过二维表存储

为什么在使用mysql的情况下仍然使用Redis

当大量用户需要同时访问mysql的时候,导致数据库的压力扩大;使得系统响应慢,用户体验感差。

  • Redis存储在内存中,读写速度快
  • 数据库存储在磁盘上,读写速度慢
  • 访问内存操作比访问磁盘的操作性能高
    所以可以通过Redis缓存数据,以此减少数据库的压力

注意事项

保证Redis与mysql中存储的信息一致!

当mysql中的内容进行修改后,应该及时更新缓存!

相关推荐
Justice link7 分钟前
企业级NoSql数据库Redis集群
数据库·redis·缓存
爱的叹息7 分钟前
主流数据库的存储引擎/存储机制的详细对比分析,涵盖关系型数据库、NoSQL数据库和分布式数据库
数据库·分布式·nosql
XiaoLeisj42 分钟前
【MyBatis】深入解析 MyBatis XML 开发:增删改查操作和方法命名规范、@Param 重命名参数、XML 返回自增主键方法
xml·java·数据库·spring boot·sql·intellij-idea·mybatis
dleei1 小时前
MySql安装及SQL语句
数据库·后端·mysql
信徒_2 小时前
Mysql 在什么样的情况下会产生死锁?
android·数据库·mysql
嘴对嘴编程3 小时前
oracle数据泵操作
数据库·oracle
爱的叹息3 小时前
Spring Boot 集成Redis 的Lua脚本详解
spring boot·redis·lua
苹果酱05673 小时前
Golang标准库——runtime
java·vue.js·spring boot·mysql·课程设计
·薯条大王9 小时前
MySQL联合查询
数据库·mysql
morris13111 小时前
【redis】redis实现分布式锁
数据库·redis·缓存·分布式锁