【第九课 + 第十课】技术选型:缓存架构 + 消息队列与异步架构

用户头像
Aldaron
关注
发布于: 2020 年 07 月 08 日

分布式缓存架构

缓存定义

缓存:存储在计算机上的一个原始数据复制集,以便访问

缓存是介于数据访问者和数据源之间的一种高速存储,当数据需要多次读取的时候,用于加快读取的速度。

缓存(Cache)和缓冲(Buffer)的区别

主要区别:目的不同

- 缓存的目的是利用高速存储设备暂存数据,以便调用者高速**多次**读取数据

- 缓冲的目的是利用高速存储设别暂存数据,以便使用者慢速读取数据



操作不同

- 缓存只有读操作

- 缓冲有读和写操作



应用不同

- 缓存 --> 缓存线上热数据,Redis

- 缓冲 --> 磁盘或网络I/O数据

缓存的应用

CPU 缓存

操作系统缓存

数据库缓存

JVM 编译缓存

CDN 缓存

代理和反向代理缓存

前端缓存

应用程序缓存

分布式对象缓存

缓存存储结构

存储结构:Hash 和 红黑树

缓存的关键指标

缓存命中率

  • 缓存是否有效依赖于能多少次重用同一个缓存响应业务请求,这个度量指标被称作是缓存命中率

  • 如果查询一个缓存,十次查询九次能够得到正确结果,那么它的命中率是90%

决定命中率的因素

  • 缓存键集合大小

  • 缓存可使用内存空间

  • 缓存对象生存空间

缓存分类

通读缓存 (read_through)

  • 代理缓存,反向代理缓存,CDN缓存

  • 通读缓存给客户端返回缓存资源,并在请求未命中缓存时获取实际数据

  • 客户端连接的是通读缓存而不是生成响应的原始服务器



用户头像

Aldaron

关注

还未添加个人签名 2018.04.28 加入

还未添加个人简介

评论

发布
暂无评论
【第九课 + 第十课】技术选型:缓存架构 + 消息队列与异步架构