失效链接处理 |
Redis 基础:为什么要用分布式缓存? PDF 下载
本站整理下载:
相关截图:
主要内容:
很多同学只知道缓存可以提⾼系统性能以及减少请求相应时间,但是,不太清楚
缓存的本质思想是什么。
缓存的基本思想其实很简单,就是我们⾮常熟悉的空间换时间。不要把缓存想的
太⾼⼤上,虽然,它的确对系统的性能提升的性价⽐⾮常⾼。
其实,我们在学习使⽤缓存的时候,你会发现缓存的思想实际在操作系统或者其
他地⽅都被⼤量⽤到。 ⽐如 CPU Cache 缓存的是内存数据⽤于解决 CPU 处理
速度和内存不匹配的问题,内存缓存的是硬盘数据⽤于解决硬盘访问速度过慢的
问题。 再⽐如操作系统在 ⻚表⽅案 基础之上引⼊了 快表 来加速虚拟地址到物理
地址的转换。我们可以把快表理解为⼀种特殊的⾼速缓冲存储器(Cache)。
我们知道,缓存中的数据通常存储于内存中,因此访问速度⾮常快。为了避免内
存中的数据在重启或者宕机之后丢失,很多缓存中间件会利⽤磁盘做持久化。
也就是说,缓存相⽐较于我们常⽤的关系型数据库(⽐如 MySQL)来说访问速
度要快⾮常多。为了避免⽤户请求数据库中的数据速度过于缓慢,我们可以在数
据库之上增加⼀层缓存。
除了能够提⾼访问速度之外,缓存⽀持的并发量也要更⼤,有了缓存之后,数据
库的压⼒也会随之变⼩。
这个实际在很多项⽬中⽤的蛮多,特别是单体架构的时候。数据量不⼤,并且没
有分布式要求的话,使⽤本地缓存还是可以的。
本地缓存位于应⽤内部,其最⼤的优点是应⽤存在于同⼀个进程内部,请求本地
缓存的速度⾮常快,不存在额外的⽹络开销。
常⻅的单体架构图如下,我们使⽤ Nginx 来做负载均衡,部署两个相同的应⽤到
服务器,两个服务使⽤同⼀个数据库,并且使⽤的是本地缓存。
|