在ASP.NET设计中有效地利用Cache对象

ZDNet软件频道 时间:2003-06-04 作者:ZDNet China |  我要评论(1)
本文关键词:
有效的caching技术是任何程序设计的一个关键的部分。在ASP.NET中有效的使用高速存储缓冲技术能够让你均衡各种资源,比如机器的内存和数据库连接,这将快速地实现网页的浏览。
本文译自Builder.com,未经许可请勿转载有效的caching(高速缓冲存储)技术是任何程序设计的一个关键的部分。因为,有效的高速缓冲存储能够通过快速地将数据返回给众多的用户而提高程序的性能,同时,它通过从当地的数据库而不需要从后台数据库提供数据而减少了对后台系统的访问,从而提高了程序的稳定性。除了Application和Session对象,功能强大的ASP提供了对高速缓冲存储机制的支持。然而,ASP.NET也支持以可编程的Cache对象形式的先进的高速缓冲存储功能。

运行Cache对象

可以通过使用System.Web.Caching来访问Cache对象。通过使用System.Web中HttpContext类的Cache属性或者Page对象的Cache属性来设置与Cache对象关联的属性和方法。Cache对象允许你存储用户可以访问的关键变量。例如,可以在名为ShortState的Dataset中存储一些状态缩写词和状态名字,然后把Dataset对象存储在Cache中,以便使任何允许状态选择或显示的页面使用。从Cache载入页面减少了重新生成数据库和调用后台数据库的麻烦。

Cache对象内存管理

无法自动管理cache对象是ASP速高缓冲存储机制的一个局限性。使用Application或Session对象的开发人员只能自行编写代码来管理数据的建立和销毁。但是,ASP.NET的Cache对象能够通过添加关联和终止规则来实现Cache的自动化管理。当在ASP.NET的Cache中添加一个条款时,你就可以设置通用语言运行时间(CLR)自动删除条款的时间。这一自动删除取决于一定的环境,所以被称为cache关联。当一个条款从cache删除时,也可以说条款是无效的。使一个cached条款无效即为告诉CLR从cache中删除了一个条款。ASP.NET中的cache关联包括文件,关键字,时间特性。现在让我们详细的看看这些特性。

文件从属

在很多情况下,尤其是当一个磁盘文件改变时,你都想把一个cache条款无效化。比如,当使用一个从外部系统生成或传入的数据时,你必须更新cache数据,特别是外部系统传入一个新的数据的时候。假设你的ASP.NET程序依赖于由主机供给的数据库,而这一主机可以将名为Customers.xml文件中的新数据传递到FTP站点。部分相关的源代码可参见于表A,表A中的代码使用了一个名为BuildDSFromXml的方法从FTP站点传入文件,然后CacheDependency对象又把文件从属传递到高速缓冲存储中。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134