【项目实践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中的内容进行修改后,应该及时更新缓存!

相关推荐
w-w0w-w4 小时前
SQL注入
网络·数据库·sql
tianyuanwo4 小时前
NetBox 数据库详解:当“关系型数据库”被装进一个网络运维的领域模型里
运维·数据库·netbox
一条泥憨鱼4 小时前
【计算机网络】短连接、长连接与连接池:从 TCP 握手到池化复用的完整链路
网络·数据库·网络协议·tcp/ip·计算机网络
我不会起名字3224 小时前
Redis 从 0 到 1(十七):订单 30 分钟不支付自动关闭——ZSet 延迟队列 Go 实现
redis·go·延迟队列·zset·订单
IvorySQL5 小时前
深入 PostgreSQL WAL:从崩溃恢复到逻辑复制
数据库·postgresql
幽灵诶6 小时前
Mysql(基于测试的学习)
数据库·mysql
砚底藏山河6 小时前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
利威尔xu6 小时前
Go IM 源码实战(13):30 个会话只有 2 个红点,未读数错在三条路径
redis·后端·微服务·面试·golang
宇宙无敌暴龙战士6667 小时前
MySQL 8 库表操作学习笔记:SQL 基础、库表管理、约束与用户授权全流程
数据库·sql·mysql·学习笔记·后端开发