第九章缓存技术.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章缓存技术

第九章 缓存技术 回顾 回顾 预习检查 本章任务 本章目标 ASP.NET缓存 什么是缓存? 缓存是在内存当中保存创建代价高的信息副本的一种技术。 例如:复杂的查询结果,如果用缓存技术保存在服务器内存当中,后续的请求就不需要访问数据库,从而减少了服务器负担,提高了应用程序的性能。 ASP.NET缓存机制 页面缓存 生成一个最终生成的HTML副本,下一次请求这个页面时,页面没有真正运行,而是访问此副本。节省了运行时间。 数据缓存 需要手工代码引入。将复杂的数据对象保存在缓存当中。其他页面可以检查这个对象是否存在,然后重用它。 部分页缓存 缓存部分的HTML。这部分页面通常是整个程序共享的。 数据源缓存 这种缓存建立在数据源控件中(如:SqlDataSource、ObjetDataSource和XmlDataSource),只学要设置相应的属性数据源控件就会自行管理缓存的读取和保存。 特殊的缓存机制:缓存依赖。允许用户在缓存的页面或者数据所依据的资源发生改变时,缓存的内容自动失效然后重新生成缓存内容。(例如:电子商务中商品的价格) 使用页面缓存 整页缓存 最简单、最常用的缓存形式,它缓存整个页面 适用页面:不需频繁更新数据;占用大量时间和资源编译 生成一个网页,显示当前时间。 将当前页面保存在缓存中,实现20秒内刷新页面,时间不会编号。超过20秒才重新获取当前系统时间。 前台代码中添加页面缓存指令 使用页面缓存 @ OutputCache支持五个属性(或参数),其中两个是必需的 按参数改变缓存内容(VaryByParam)-1 VaryByParam参数 当该属相被设置为“none”则表示该页面不会根据参数的不同来改变缓存 创建页面,根据用户选择不通的语言,输出不同语种的欢迎信息,并缓存。 当该属相被设置为“none”则表示该页面不会根据参数的不同来改变缓存 显示当前时间,用时间变化也区别缓存是否实现。 按参数改变缓存内容(VaryByParam)-1 按参数改变缓存内容(VaryByParam)-2 如图,学员信息列表页设置了整页缓存,使用Repeater控件绑定学员信息,点击学号导航当前页面 显示时间 实现:根据点击不同学号,显示不不同系统时间。 加深理解VaryByParam的用法。 按标头信息改变缓存内容(VaryByHeader) VarByHeader属性的设置 默认情况下,页面锁输出的缓存,在相应到不同请求头信息的内容都是相同。 可以设置根据不同的请求头信息,生成不同的缓存。 创建页面,用IE浏览器 和 Firefox 分别浏览此页面 设置VarByHeader = “user-Agent” user-Agent头标识,用来区分不同的浏览器。 显示当前时间,用时间变化也区别缓存是否实现。 按标头信息改变缓存内容(VaryByHeader) 使用自定义字符串改变缓存内容 VarByCustom属性的设置 VarByCustom 指定的值可以是任何名称的自定义字符串名称。 要实现此功能,必须在Global.asax应用程序文件中编写 使用部分页缓存 使用部分页缓存(1) 使用部分页缓存(2)之 缓存后替换 实现思路 创建页面,其中包括一个Lable,用来显示系统时间 再使用Substitution控件,用于使用显示系统时间 整个页面缓存。 刷新页面,虽然是整页缓存,但是Substitution中的内容却不受缓存影响(即:缓存后替换) 缓存后替换 数据缓存 数据缓存 添加应用程序缓存(3) 检索和移除缓存 数据缓存 数据缓存关键代码 缓存依赖项 缓存依赖项 缓存依赖项关键代码 其他缓存依赖项 总结 总结 家庭作业 IT之行,始于足下 1、概述缓存的好处和弊端 2、 Substitution 控件的MethodName属性调用的方法有哪3个特征? 妥善使用,可以数倍提高应用程序性能。 缓存是存储在内存中的信息,如果保存了太多的信息,这样可能减慢整个系统的速度 protected static string GetNowTime(HttpContext context) { return DateTime.Now.ToString(); } 必须是静态的 返回类型必须是string型 参数必须是HttpContext型 3、ASP.NET中有哪些缓存技术? 5、页面缓存需要在页面中加入( )指令. 6、数据缓存使用( )对象来管理缓存。 ( )方法添加缓存项, (

文档评论(0)

asd522513656 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档