欢迎来到天天文库
浏览记录
ID:15003260
大小:48.00 KB
页数:9页
时间:2018-07-31
《asp[1].net+缓存技术总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、提高性能最好最快的办法当然是通过缓存来改善,对于任何一个web开发者都应该善用缓存。Asp.net下的缓存机制十分强大,用好缓存机制可以让我们极大的改善web应用的性能,下面是一些总结的缓存的知识点,与大家分享交流:1.页面缓存 要实现页面输出缓存,只要将一条OutputCache指令添加到页面即可。 <%@OutputCacheCacheProfile=""NoStore="True
2、False"Duration="#ofseconds"Shared="True
3、False"Locati
4、on="Any
5、Client
6、Downstream
7、Server
8、None
9、ServerandClient"SqlDependency="database/tablenamepair
10、CommandNotification"VaryByControl="controlname"VaryByCustom="browser
11、customstring"VaryByHeader="headers"VaryByParam="parametername"%> CacheProfile
12、 用于定义与该页关联的缓存设置的名称。是可选属性,默认值为空字符("")。需要注意的是,包含在用户控件中的@OutputCache指令不支持此属性。在页面中指定此属性时,属性值必须与Web.config文件配置节下的outputCacheProfiles元素中的一个可用项的名称匹配。如果此名称与配置文件项不匹配,将引发异常。 NoStore 该属性定义一个布尔值,用于决定是否阻止敏感信息的二级存储。需要注意的是,包含在用户控件中的@O
13、utputCache指令不支持此属性。将此属性设置为true等效于在请求期间执行代码“Response.Cache.SetNoStore();”。 Duration 用于设置页面或者用户控件缓存的时间。单位是秒。通过设置该属性,能够为来自对象的HTTP响应建立了一个过期策略,并将自动缓存页或用户控件输出。需要注意的是,Duration属性是必需的,否则将会引起分析器错误。 Shared 该属性定义一个布尔值,用于确定用户控件输出是否
14、可以由多个页共享。默认值为false。注意,包含在ASP.NET页中的@OutputCache指令不支持此属性。 Location 用于指定输出缓存项的位置。其属性值是OutputCacheLocation枚举值,它们是Any、Client、Downstream、None、Server和ServerAndClient。默认值是Any,表示输出缓存可用于所有请求,包括客户端浏览器、代理服务器或处理请求的服务器上。需要注意的是,包含在用户控件中的@OutputCache指令不支持
15、此属性。 SqlDependency 该属性标识一组数据库/表名称对的字符串值,页或控件的输出缓存依赖于这些名称对。需要注意:SqlCacheDependency类监视输出缓存所依赖的数据库中的表,因此,当更新表中的项时,使用基于表的轮询将从缓存中移除这些项。当通知(在SQLServer2005中)与CommandNotification值一起使用时,最终将使用SqlDependency类向SQLServer2005服务器注册查询通知。另外,SqlDependency属性的C
16、ommandNotification值仅在ASP.NET页中有效。控件只能将基于表的轮询用于@OutputCache指令。 VaryByControl 该属性使用一个分号分隔的字符串列表来更改用户控件的输出缓存。这些字符串代表在用户控件中声明的ASP.NET服务器控件的ID属性值。除非已经包含了VaryByParam属性,否则在@OutputCache指令中,该属性是必需的。 VaryByCustom 用于自定义输出缓存要求的任意文
17、本。如果赋予该属性值是browser,缓存将随浏览器名称和主要版本信息的不同而异。如果输入了自定义字符串,则必须在应用程序的Global.asax文件中重写HttpApplication.GetVaryByCustomString方法。 VaryByHeader 该属性中包含由分号分隔的
此文档下载收益归作者所有