五十六:使用ObjectDataSource缓存数据讲述.docx

五十六:使用ObjectDataSource缓存数据讲述.docx

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

在ASP.NET 2.0中操作数据之五十六:使用ObjectDataSource缓存数据作者:heker2007 字体:[增加?减小] 类型:转载时间:2016-05-17?我要评论本文主要讲解ASP.NET 2.0中ObjectDataSource内建的缓存功能,通过简单的配置,我们可以将ObjectDataSource调用SelectMethod方法得到的数据进行缓存。导言  就计算机科学而言,caching就是将所需要的数据或信息的备份放在某个地方,便于快速访问的这样一个过程。以数据处理(data-driven)程序为例,程序的大部分时间浪费在数据查询上。要提升这种程序的性能,通常的做法是将查询结果存放在程序的存储器里。  ASP.NET 2.0提供了各种各样的缓存方式。对web页面和用户控件可以通过output caching进行缓存;同样我们可以通过ObjectDataSource 和SqlDataSource控件,在控件级(control level)对数据进行缓存;同时,ASP.NET的data cache提供了丰富的缓存接口(caching API),供页面开发员通过编程缓存对象。在本文及接下来的3篇文章我们将对ObjectDataSource的缓存属性以及data cache进行考察;我们也将探究如何在启动时对application-wide数据进行缓存,以及通过使用SQL cache dependencies对缓存数据刷新。主要的缓存要点  由于缓存通过将数据的副本放置在一个便于快速访问的地方来提高程序的总体性能。由于它仅仅是一个副本,当源数据发生改变时,副本不能同步更新。为此,页面开发员应制定一个标准将其清除出内存,可以使用如下的2种方法之一:  Time-based标准:向内存添加的条目(item),只能在内存里驻留固定或灵活(sliding)的一段时间。比如,开发者可设定一个时间段,比如60秒,当条目添加到内存后,不管访问它的频率有多高,60秒后就会被清除掉;如果是灵活(sliding)处理的话,当最后一次被访问后,未再次被访问的时间一旦超出60秒,也会被清除掉。  Dependency-based标准:当向内存添加条目时为其分配一个从属体(dependency),当条目对应的从属体发生改变时将条目清除掉。从属体可以是一个文件;另一个缓存条目;或者干脆是这两者的混合体( combination);当然还可以是SQL cache dependencies,它可以向内存添加条目,当源数据改变时将条目清除掉。我们将在接下来的文章《使用SQL缓存依赖项SqlCacheDependency?》里详细考察。  不管是哪种标准,在条目被清除掉以前,我们都可以对其访问。如果内存达到了它的极限,它会清除掉已有的条目后再添加新的条目。因此,当处理缓存数据时很重要的一点是我们要充分考虑到缓存数据已被清除的可能。在下一篇文章《在分层架构中缓存数据》我们考察采用哪种模式从内存访问数据。  缓存是提升程序性能的一种较为经济的方法,就像Steven Smith在他的文章《ASP.NET Caching: Techniques and Best Practices:》里阐述的一样:“缓存是获得‘上佳性能的一种好方法,不需要太多的时间和分析。… 存储器也便宜,要获得你期望的性能,靠缓存技术你需要花30秒;靠优化代码和数据库你可能要几天乃至几周时间…”  虽然缓存可以显而易见的提升系统性能,但并不是适用于所有的应用程序,比如某些实时(real-time)、频繁更新数据的程序就不适合。  但是对大部分程序而言,还是适用的。关于ASP.NET 2.0里的缓存的更多背景资料请参考ASP.NET 2.0 QuickStart Tutorials系列的Caching for Performance 部分。第一步:创建Caching页面在我们开始以前,首先让我们花些时间来添加包括本篇在内的最近四篇教程需要用到的页面。我们先在项目中新建一个称作Caching的文件夹,接下来,为目录新增以下几个页面,并配置为使用Site.master母板页。Default.aspxObjectDataSource.aspxFromTheArchitecture.aspxAtApplicationStartup.aspxSqlCacheDependencies.aspx图1:创建相关的ASP.NET页面像其它文件夹一样,Caching文件夹里的Default.aspx页面将本系列的文章显示出来。记得用户控件SectionLevelTutorialListing.ascx提供该功能,设计模式里将其拖到页面上。图2:为Default.aspx页面添加用户控件SectionL

文档评论(0)

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

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

1亿VIP精品文档

相关文档