电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

缓存设计详解:低成本的高性能Web应用解决方案VIP免费

缓存设计详解:低成本的高性能Web应用解决方案_第1页
1/9
缓存设计详解:低成本的高性能Web应用解决方案_第2页
2/9
缓存设计详解:低成本的高性能Web应用解决方案_第3页
3/9
第1页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共9页网站性能直接影响访问速度,从而影响访问量。实现高性能Web应用的重要性是不言而喻的。性能瓶颈主要体现在高延时、拥塞和服务器负载,专业的解决方法往往成本较高。做好缓存的设计则可以在控制成本的情况下充分的提高性能。过去几年中,Web应用程序已经从简单的HTML页面堆积演变成使用各种各样的技术构建高可扩展性和交互式的富应用程序。设计和开发这类应用程序变得越来越复杂,此外,决策者正越来越多地寻求构建更丰富的互动功能到这些应用程序中,同时还要保证可维护性和高性能,但高性能意味着高成本。为了构建提供给最终用户体验的是一个牢固的应用程序,开发人员需要解决潜在的性能瓶颈。本文侧重于缓存——它是交付高性能Web应用程序急需的——也简要介绍一下压缩功能。有一些公司在生产和销售专门的压缩和性能产品。本文旨在简单介绍在寻求专业产品解决性能问题之前开发人员可以在客户端和服务器端对Web应用程序做的一些性能改进。性能瓶颈性能瓶颈主要体现在高延时、拥塞和服务器负载。缓存不能完全解决掉这三个问题,但经过详细的设计考虑,缓存是可以提高性能的。在服务器端和客户端都缓存内容,据调查,平均而言,下载HTML只需要总的用户响应时间的10-20%,剩下的80-90%全部用于下载页面中的其它组成内容,这些组成内容通常包括图像,如公司logo,缓存logo可以有效避免到服务器的多次往返。在前日51CTO上发布的加速,加速,再加速:来自Google的网站加速技巧大全中,Google提到的提升网站速度和性能的低成本技巧中就包括缓存这一条。至于架构设计方面,则可参考51CTO的视频专题:大型网站架构专家谈。简单地讲,缓存是临时存储。它将数据复制到不同的计算机或不同于原始数据源的位置,有了正确的配置,访问缓存数据的速度比访问原始数据的速度要快得多,使用缓存数据可以减小服务器负载和带宽消耗,从最终用户的角度来看就是性能提高了。图1显示了Internet如何工作的快速总揽,以及缓存在哪里发生作用。第2页共9页第1页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共9页图1Internet上的缓存:这个图显示了常见的请求和检索缓存信息的时机缓存正如你在图1中所看到的,在服务器和客户端上缓存数据既是可能的也是有效的,图2显示了这三个缓存位置的不同视图。第3页共9页第2页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共9页图2缓存配置:此图显示了三个典型的缓存位置1、客户端浏览器缓存:浏览器缓存Web对象后,可以对重复的请求直接响应,不用再从Internet请求数据了。2、服务器端转发代理缓存:虽然可能有些变化,但这些缓存位置通常是在最终用户防火墙里面,可以对请求直接响应,不需要从原始来源请求数据。3、服务器端反向代理缓存:也被称为网关或代理缓存,这些缓存服务器的操作代表了客户的来源服务器,术语“内容分发网络(CDN)”就是这些反向代理缓存的集合。你可以缓存任何可能不止一次被请求的对象,但总有一个危险就是缓存的对象很可能变得陈旧,也就是说,没有准确地反应原始数据。不过可以使用两个参数来控制所有可缓存的对象:freshness和validation。freshness和validation都可以使用HTTP请求和相应组合来进行确定。◆Freshness确定某个对象是否可以从缓存中获得,使用expires和cache-control:max-age头进行控制。◆Validation确定某个对象是否已经陈旧,使用last-modified和if-modified-since头进行控制。设计高度缓存的Web应用程序企业级Web应用程序既有静态部分又有动态部分,只要进行了正确的设计和架构,都能够实现静态部分从缓存中获取,动态部分从原始服务器获取,但第一步是确定要缓存什第4页共9页第3页共9页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共9页么,图3提供了一个指南,可以帮助你确定哪些对象是可缓存,哪些对象是动态的(不可缓存的)。图3确定缓存能力:此图提供了某个对象是否应该缓存的指南应用程序架构在可缓存对象和不可缓存对象之间有一点差异,开...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

缓存设计详解:低成本的高性能Web应用解决方案

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部