课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
缓存是我们在学习性能优化的时候需要重点考虑的一个问题,而今天我们就通过案例分析来了解一下,缓存的基本原理和常见类型。
一、前言:为什么要用缓存?
用户数增长,架构演变,数据量增大,开始考虑怎么去做性能优化。
而性能优化的目的就是:优先考虑使用缓存。
二、缓存的基本原理
2.1缓存的作用
1、加快数据访问速度;
2、减轻后端应用和数据存储的负载压力。
2.2缓存的特征
1、命中率:命中率=命中数/请求数。
这是衡量缓存有效性的重要指标。命中率越高,表明缓存的使用率越高。
2、淘汰策略。
FIFO(FirstInFirstOut)先进先出,淘汰早数据。
判断存储时间,离目前远的数据优先淘汰。
LRU(LeastRecentlyUsed)剔除近少使用。
判断近使用时间,离目前远的数据优先淘汰。
LFU(LeastFrequentlyUsed)剔除近使用频率低的数据。
在一段时间内,数据被使用次数少的,优先淘汰。
三、缓存的分类
缓存的主要手段有:浏览器缓存、CDN、反向代理、本地缓存、分布式缓存、数据库缓存。
我们一般说做性能优化时是指后三个:本地缓存、分布式缓存、数据库缓存。
前面三个缓存策略属于网站前端的范畴。
从硬件介质上来看,缓存分为内存和硬盘两种。
但从技术上,又可以分成内存、硬盘文件、数据库。
我们通常意义上说的缓存一般都是基于内存的。
因为只有内存,才足够快。
数据库缓存一般也是基于内存的,但这个活一般是DBA在配置数据库的时候就设置好了。
对于大部分开发人员来说,我们一般所说的缓存优化都是基于本地缓存(ocalcache)和远程缓存(remotecache)。
而现在远程缓存这个词一般也被分布式缓存这个常用方案所代指。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!