首页 > 其他 > 详细

缓存方案

时间:2019-08-27 19:55:52      阅读:97      评论:0      收藏:0      [点我收藏+]

缓存介绍

  • 作用
    • 减小数据库的访问压力, 提高并发能力
  • 多级缓存
    技术分享图片

缓存粒度

  • 缓存某个数值
    • 一个键只保存一个值, 性价比较低, 使用率低
    • 场景 验证码

  • 缓存数据对象
    • 数据库记录对应的具体数据
    • 优点 可以多次复用
    • 场景 用户/文章数据

  • 缓存数据集合
    • 数据库查询对应的结果集
    • 场景 文章/关注列表
    • 可以和数据对象配合使用, 方便数据对象的重用

  • 缓存视图响应
    • 视图返回的响应数据
    • 缺点 复用性比较差
  • 项目中主要对 数据集合+数据对象 进行缓存, 优点 复用性强, 节省内存

数据格式 (重点)

  • 数值
    • 类型 string

  • 数据对象
    • hash
      • 可以直接更新某个字段, 不需要格式转换
      • 占用的空间比较多
    • 结构化string (json字符串)
      • 更新字段需要进行转换
      • 占用的空间小
    • 头条项目中优先使用结构化string

  • 数据集合
    • article:top:30 / md5("select * from t_arcitle order by(create_time) desc limit 30;")
    • 值 list/zset/set/hash/结构化string
    • list
      • 有遍历的需要
    • zset
      • 有排序的需要
    • set
      • 有判断是否存在的需要
    • hash
      • 需要记录字段, 空间占用多
    • json字符串
      • 节省空间
    • 头条项目中主要使用了json字符串zset的形式

  • 视图响应
    • string
    • 键 请求URL
    • 值 响应结果对应的字符串 前端渲染json字符串/后端渲染html字符串

缓存方案

原文:https://www.cnblogs.com/oklizz/p/11420198.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!