网站优化-网站缓存技术.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网站优化-网站缓存技术

一、何谓asp缓存/为什么要缓存 当你的web站点采用asp技术建立的初期,可能感觉到的是asp动态网页技术带来的便利性,以及随意修改性、 自如的http控制。但是,随着访问量的增加,你一定会发现自己的站点访问速度越来越慢,IIS重新启动得越来越频繁。接下来,你一定想优化asp,诸如更换性能更优异的数据库、建立索引、编写存储过程等等。这些措施有些不需要增加成本压力,有些则成本压力很大(譬如丛access到SQL),而且效果还不一定。 面对web访问压力,我认为最经济的办法是利用缓存优化技术来实现缓解web的服务压力。 Web访问量增加通常意味着以下资源需 求的快速增长: 1. 网卡流量增加,需要消耗更多的CPU处理网络流量和网络I/O线程。 2. 需要更频繁的打开/关闭数据库连结(如果使用数据库技术—通常asp都会采用数据库作为数据存储),严重消耗资源的事物数量、以及事务相互竞争资源引起的 死锁、会增加网络I/O或者CPU消耗。 3. 如果采用session的话,IIS为了维持状态,会消耗更多内存,而内存消耗可能会引发物理内存不够,引起物理内存同辅存间的频繁交换,从而引起代码执 行的停顿,web响应阻滞。 4. 由于访问的不到及时响应,会引起网页访问故障,导致用户刷新,从而加剧CPU、内存等资源需求。 实际 上,考虑通常的web应用程序,很多时候的动态代码执行是不必要的。 二、asp缓存的分类 擅自总结,asp的缓存可以分为两类: 1、 文件缓存 所谓文件缓存,就是根据逻辑判断,一段时间内某个asp的特定执行将不会有很大的变动,因而将内容以静态 html的形式存放,然后以web的重定向技术让客户端访问静态文件,以达到减少CPU、数据库资源等的需求。这样的应用很多,譬如很多论坛就是在回复贴 子的时候将整个贴子重新生成一个静态文件,然后进行重定向的,例如 的论坛。该成静态还有一个副作用(好处)–可以很容易被google等搜索引擎收录。一些所谓新闻发布系统的都采用了此技术。 2、 文件片断缓存 所谓文件缓存,也是基于逻辑判断,某部分数据(通常是需要消耗资源的大容量数据库查询取得)在一定时间内不会改变,所以我们可以将 这些数据利用文件的形式进行存储,当需要时候,可以通过读取文件来获取数据,避免增加数据库的负担。例如,我们通常将一些数据以xml格式存储,然后利用 xslt技术实现显示(xml处理通常需要大量CPU资源,所以通常是IE直接读取xml到客户端在客户的CPU上进行处理)。CSDN的论坛就是这样处 理的。 3、 主存缓存 除此之外,还可以考虑在内存中处理缓存,将需要及时响应的内容存储在内存中,一旦访问需求,立即从快速的贮存中输送 出去。如果极大量的访问需求集中在几个少量的页面或者主存足够多,我想采用主存缓存一定可以大幅度提高web访问性能。 三、如何 实现/使用缓存 实现缓存需要考虑以下问题: 1、 哪些页面会在短时间内不会改变? 分析自己的站点,这样的页面很多。譬如一个站点 通常都有新闻资讯类的栏目,这些栏目通常都是站点维护人员在一天的某个时间发布资料,之后很少改动页面。那么这些页面就适合于采用静态文件缓存。实际上, 所谓新闻发布系统就是这么做的,那么那也可以参考这些系统的思想改造自己的原有动态asp页面。 2、 那些页面针对全部访问者都采用同一个逻辑生成(也就是不区分访问者)。 除了新闻资讯之类的栏目所有访问者都看一个界面外,论坛等消耗资源的应用一 般也可以设计成统一逻辑生成(同一个贴子,张三李四看的都一样),针对这类应用页面我们也可以采用静态缓存来实现。也可以考虑将数据片断化,利用脚本技术 在服务器处理能力之外也就是客户端浏览器进行处理。 3、 采用缓存的代价和收获。 主要就是“空间换(响应)时间”。利用 缓存技术将之后频繁需要的内容进行预处理,使之提高web服务器响应能力,更重要赢得访问者的欢心。代价就是web空间需求增加,同时又可能影响 到访问效果。但我认为适当的缓存,是利大于弊的。 4、 那些地方不适宜采用缓存 动态查询页面,每个人的查询内容 不一样,所以显示结果不大一样,所以不大可能将查询结果生成缓存,所以采用缓存较为复杂且缓存利用率底下,造成管理成本上什(假设你缓存了1000个查询 关键字,那么管理这些关键字同缓存的对应也是麻烦事)。 四、实例分析 假设一个建议论坛的原有布局如下: 根目录下: ?default.asp 首页,一般是精华、推荐之类 ?listBorad.asp 该文件列出全部分栏目的名称和

文档评论(0)

zhuwenmeijiale + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档