请问什么叫做缓存?
缓存是架构设计非常重要的一个环节,是架构师必须要掌握的技能,希望我的分享能够给大家带来帮助 。01.什么是缓存存储在计算机上一个原始数据复制集,以便于访问 。--维基百科缓存是系统快速响应中的一种关键技术,是一组被保存起来以备将来使用的东西,介于应用开发和系统开发之间,是产品经理们经常顾及不到的地方,也是技术架构设计中的非功能性约束 。
我们可以这样理解,把你经常用的东西copy一份放在离你最近的地方,下次你用就更快了 。02.空间换时间的艺术缓存是通过存储(空间)的消耗,以提升访问性能(获得时间)的艺术 。在军事领域的二个案例:1)二战中,德国打俄罗斯,俄罗斯就得益于自己的土地辽阔,空间大,战略纵深帮了大忙,容易打持久战,不可能被迅速打败 。
而德国时间上拖不起,不能速胜,随着时间推移,全球形式瞬息万变,自然气候也不允许德国久战,空间换时间,时间带来变数 。2)白崇禧,国民政府指挥抗日战争的重要将领,研究了拿破仑入侵俄国的战争,提出了“积小胜为大胜,以空间换时间,以游击战辅助正规战,与日本人作长期抗战”的重要军事指导思想,密令张自忠将军于日军侵占华北初期,与日军周旋,缓解敌军攻势,并且争取后方整补时间,以拖延战术换取国民党政府有充足时间准备全面战争 。
在商业领域,比如通过在全国各地开连锁店,可以将自己的产品和商业模式迅速在全国复制推广,对与老百姓,可以就近很方便的享受到体验一致的产品和服务质量 。在生活中,当我们生活在一线城市,如果家住通州,市区通勤上下班会达到三四个小时,减少通勤时间最简单的办法就是在公司附近租房子,能够极大的压缩通勤的时间 。所以说,缓存的思想无处不在 。
03.为何要用缓存在“用户体验”至上的互联网时代,唯有提升访问性能才是王道 。当客户访问页面或是交易加载时间每延迟一秒,继续浏览、转化率、满意度都会下降,尤其是满意度,会影响到网站的口碑 。04.缓存的设计架构我们在搭建系统架构的时候,为了提升访问性能,会在系统的各个层面考虑使用缓存技术:当客户使用浏览器访问web应用的时候,浏览器会缓存页面的静态资源,DNS会缓存IP地址,再次访问的时候,能够加速网址的解析和页面的访问性能;通过CDN网络,使得客户能够就近访问热点资源,而不是到源站访问资源,避免源站的网络拥堵;Web应用会使用本地缓存加速进程内的数据访问性能;为避免数据库访问的性能瓶颈,使用分布式缓存技术,将查询热点数据缓存到内存中,供应用程序访问,同时,数据库本身也具备缓存机制提升访问效率 。
如下图所示 客户端缓存当我们通过客户端的浏览器首次打开一个页面的时候,通常响应速度要比第二次打开要慢,是因为首次打开页面的时候,浏览器会将 HTML、CSS、JavaScript、图片等静态资源进行缓存,避免了再次访问下载资源的时间开销 。DNS缓存DNS缓存是指在正常访问ip之后,系统会将这个ip存储起来,当再次访问的时候,系统就会直接把本地的DNS缓存提取显示,等于是加速了网址的解析 。
CDN网络CDN是构建在互联网上的内容分发网络,依靠部署在各地边缘节点的缓存服务器,通过中心节点将源站的热点静态资源推送的边缘节点,使用户就近获取所需内容,降低网络拥塞,大大提高用户的访问响应速度 。反向代理缓存反向代理位于服务器之前,请求与响应都需要经过反向代理 。通过将数据缓存在反向代理,在用户请求反向代理时就可以直接使用缓存进行响应 。
推荐阅读
- 华为激光雷达,怎么样才能知道自己的手机 的红外传感器是不是好的 到底有没有坏
- 尼康1dx怎么样,尼康的质量到底怎么样
- 邮政快递的速度怎么样,为什么邮政快递物流那么慢
- 党校教师如何提高能力,如何做好党校教师
- 苹果为什么好用,苹果的系统那么难用
- 为什么80后那么有钱,不干活也很有钱
- 中国的特效为什么这么烂,中国电影的特效那么假
- 庄市房价为什么会涨,房价为什么涨得那么快
- 甘肃天水房价为什么高,天水房价为什么那么高
- 厦门房价为什么那么贵,为什么厦门的房子很贵
