当前位置: 首页 > news >正文

高性能架构模式——高性能缓存架构

目录

    • 一、引入前提
    • 二、缓存架构的设计要点
      • 2.1、缓存穿透
        • 2.1.1、缓存穿透第一种情况:存储数据不存在
        • 2.1.2、缓存穿透第二种情况:缓存数据生成耗费大量时间或者资源
      • 2.2、缓存雪崩
        • 2.2.1、解决缓存雪崩的第一种方法:更新锁机制
        • 2.2.2、解决缓存雪崩的第二种方法:后台更新机制
      • 2.3、缓存热点
        • 2.3.1、缓存热点的解决方法
    • 三、缓存架构的实现方式

本文来源:极客时间vip课程笔记

一、引入前提

  • 虽然我们可以通过各种手段来提升存储系统的性能,但在某些复杂的业务场景下,单纯依靠存储系统的性能提升不够的,典型的场景有:

  • 经过复杂运算后得出的数据,存储系统无能为力

    例如,一个论坛需要在首页展示当前有多少用户同时在线,如果使用 MySQL 来存储当前用户状态,则每次获取这个总数都要“count(*)”大量数据,这样的操作无论怎么优化 MySQL,性能都不会太高。如果要实时展示用户同时在线数,则 MySQL 性能无法支撑。

  • 读多写少的数据,存储系统有心无力

    例如,一个明星发一条微博,可能几千万人来浏览。如果使用 MySQL 来存储微博,用户写微博只有一条 insert 语句,但每个用户浏览时都要 select 一次,即使有索引,几千万条 select 语句对 MySQL 数据库的压力也会非常大

  • 缓存就是为了弥补存储系统在这些复杂业务场景下的不足,其基本原理是将可能重复使用的数据放到内存中,一次生成、多次使用,避免每次使用都去访问存储系统。

  • 缓存能够带来性能的大幅提升,以 Memcache 为例,单台 Memcache 服务器简单的 key-value 查询能够达到 TPS 50000 以上,其基本的架构是:
    在这里插入图片描述

  • 缓存虽然能够大大减轻存储系统的压力,但同时也给架构引入了更多复杂性。架构设计时如果没有针对缓存的复杂性进行处理,某些场景下甚至会导致整个系统崩溃。

二、缓存架构的设计要点

2.1、缓存穿透

  • 缓存穿透
http://www.xdnf.cn/news/1132273.html

相关文章:

  • alpineLinux修改包管理为国内源
  • 【Linux】基本指令详解(二) 输入\输出重定向、一切皆文件、认识管道、man、cp、mv、echo、cat
  • LVS集群搭建
  • OpenCV稠密光流估计的一个类cv::optflow::DenseRLOFOpticalFlow
  • [AI-video] 字幕服务 | 视频素材服务 | 视频生成服务
  • 智能电网时代:双向WiFi电表在海外家庭能源中的战略价值
  • C++---emplace_back与push_back
  • 网络爬虫的相关知识和操作
  • lazyvim恢复gt键
  • 项目流程管理系统使用建议:推荐13款
  • 【27】MFC入门到精通——MFC 修改用户界面登录IP IP Address Control
  • DHTMLX Suite 9.2 重磅发布:支持历史记录、类Excel交互、剪贴板、拖放增强等多项升级
  • AWS IAM 最佳安全实践通用指南
  • 随机链表的复制数据结构oj题(力口138)
  • HTML进阶
  • Golang学习之常见开发陷阱完全手册
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘tkinter’问题
  • C#语法基础总结(超级全面)
  • 16路串口光纤通信FPGA项目实现指南 - 第二部分(下)
  • uniapp写好的弹窗组件
  • Maven入门指南:生命周期、阶段和执行顺序详解
  • Qt 将触摸事件转换为鼠标事件(Qt4和Qt5及以上版本)
  • webpack和vite对比
  • Django基础(三)———模板
  • 大语言模型(LLM)训练的教师强制(Teacher Forcing)方法
  • django在线音乐数据采集-22647
  • Anspire Open暑期上新季 - 第二弹Anspire Browser Agent,开启云端自动化新纪元
  • 【RTSP从零实践】13、TCP传输AAC格式RTP包(RTP_over_TCP)的RTSP服务器(附带源码)
  • Node.js Process Events 深入全面讲解
  • 【AI智能体】Dify 基于知识库搭建智能客服问答应用详解