马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
1.什么是缓存
缓存 (cache) 是盘算机中的⼀个经典的概念. 在许多场景中都会涉及到. 核⼼思绪就是把⼀些常⽤的数据放到触⼿可及(访问速率更快)的地⽅, ⽅便随时读取. 举个例⼦: ⽐如我须要去⾼铁站坐⾼铁. 我们知道坐⾼铁是须要反复刷⾝份证的 (进⼊⾼铁站, 检票, 上⻋, 乘⻋过程中, 出站....). 正常来说, 我的⾝份证是放在⽪箱⾥的(⽪箱的存储空间⼤, ⾜够能装). 但是每次刷⾝份证都需 要开⼀次⽪箱找⾝份证, 就⾮常不⽅便. 因此我就可以把⾝份证先放到⾐服⼝袋⾥. ⼝袋固然空间⼩, 但是访问速率⽐⽪箱快许多. 如许的话每次刷⾝份证我只须要从⼝袋⾥掏⾝份证就⾏了, 就不必开⽪箱了. 此时 "⼝袋" 就是 "⽪箱" 的缓存. 使⽤缓存可以或许⼤⼤提⾼访问服从. 这⾥所说的 "触⼿可及" 是个相对的概念. 我们知道, 对于硬件的访问速率来说, 通常环境下: CPU 寄存器 > 内存 > 硬盘 > ⽹络 那么硬盘相对于⽹络是 "触⼿可及的", 就可以使⽤硬盘作为⽹络的缓存. 内存相对于硬盘是 "触⼿可及的", 就可以使⽤内存作为硬盘的缓存. CPU 寄存器相对于内存是 "触⼿可及的", 就可以使⽤ CPU 寄存器作为内存的缓存. 对于盘算机硬件来说, 通常访问速率越快的装备, 本钱越⾼, 存储空间越⼩. 缓存是更快, 但是空间上通常是不⾜的. 因此⼤部门的时间, 缓存只放⼀些 热门数据 (访问频仍的数据), 就⾮常有⽤了
关于 "⼆⼋定律" 20% 的热门数据, 可以或许应对 80% 的访问场景. 因此只须要把这少量的热门数据缓存起来, 就可以应对⼤多数场景, 从⽽在团体上有显着的性 能提拔. 2.使⽤ Redis 作为缓存
在⼀个⽹站中, 我们经常会使⽤关系型数据库 (⽐如 MySQL) 来存储数据. 关系型数据库固然功能强⼤, 但是有⼀个很⼤的缺陷, 就是性能不⾼. (换⽽⾔之, 进⾏⼀次查询操纵斲丧 的体系资源较多) 2.1为什么说关系型数据库性能不⾼?
1. 数据库把数据存储在硬盘上, 硬盘的 IO 速率并不快. 尤其是随机访问. 2. 假如查询不能掷中索引, 就须要进⾏表的遍历, 这就会⼤⼤增长硬盘 IO 次数. 3. 关系型数据库对于 SQL 的执⾏会做⼀系列的剖析, 校验, 优化⼯作. 4. 假如是⼀些复杂查询, ⽐如团结查询, 须要进⾏笛卡尔积操纵, 服从更是低落许多.
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |