`

Asp.Net 网站性能优化 缓字决 Asp.Net 内置的输出缓存介绍

阅读更多

Asp.Net 中有两类缓存方式一种是对页面或者控件的输出内容缓存,一种是对数据的缓存;我们先来看看输出缓存。

输出缓存通常在页面或UserControl上做指令声明,如下示例:

1 <%@ OutputCache Duration="1000" Location="Any" VaryByParam="id" %>


在页面上声明的OutputCache指令是由OutputCacheModule处理的,OutputCacheModule配置在.Net framework的web.config文件中

1 <add name="OutputCache" type="System.Web.Caching.OutputCacheModule"/>

下面简单写下OutputCache指令属性在页面上的使用:
1. Duration这个值是必填值,以秒为单位指定缓存的失效时间
2. Location的值用来指定缓存数据的存放位置,其默认值为Any,Any表示可以存在在服务器端,客户端,或者代理服务器上;
3. NoStore设置为true表示通过http头通知浏览器不要存储页面
4. VaryByCustom表示自定义的缓存值是否改变,可以指定其值为browser,使不同浏览器使用不同的缓存版本,也可以指定自定义的缓存值,当指定值定义值时必须在Global文件中重写GetVaryByCustomString方法
5. VaryByHeader指定缓存版本随指定的http请求头的值变化
假如我们需要根据浏览器的不同输出不同的缓存版本我们可以这样指定OutputCache指令

1 <%@ OutputCache Duration="10" VaryByHeader="User-Agent" VaryByParam="None" %>


你可以在页面上输出下面内容,用ie和firefox分别访问页面,观察缓存变化情况

1 <p> <%=Request.UserAgent + " request at " + DateTime.Now%></p>


6. VaryByControl用来指定页面缓存需要根据控件的值的变化做变化
7. 最常用的VaryByParam用来指定是否根据或根据什么查询字符串的值做变化

在.Net 4.0中为我们提供了扩展OutputCache的接口,具体请看Asp.Net 4.0 新特性之 使用自定义OutputCache Provider.

另外向大家推荐有关客户端浏览器缓存的Http头介绍 <!--end: searchItemTitle -->

0
0
分享到:
评论

相关推荐

    ASP.NET内置对象,应用程序配置和缓存

    ASP.NET内置对象,应用程序配置和缓存资料文档

    ASP.NET应用开发案例教程——基于MVC模式的ASP.NET+c#+ADO.NET 课件

    全书论述了ASP.NET开发概述、C#及ADO.NET背景知识、ASP.NET Web窗体的基本控件、数据控件和数据绑定技术、用户控件和自定义控件、ASP.NET内置对象和缓存技术、ASP.NET应用程序配置及编译和部署、ASP.NET与Web服务、...

    下部分课件 ASP.NET应用开发案例教程——基于MVC模式的ASP.NET+c#+ADO.NET 课件

    全书论述了ASP.NET开发概述、C#及ADO.NET背景知识、ASP.NET Web窗体的基本控件、数据控件和数据绑定技术、用户控件和自定义控件、ASP.NET内置对象和缓存技术、ASP.NET应用程序配置及编译和部署、ASP.NET与Web服务、...

    ASP.NET从入门到精通

    第13章 ASP.NET 内置对象,应用程序配置和缓存 第14章 ASP.NET XML 和Web Service 第五篇 ASP.NET 3.5 高级编程 第15章 图形图像编程 第16章 ASP.NET 3.5 和AJAX 第17章 ASP.NET MVC 基础 第18章 WCF 开发基础 第19章...

    ASP.net从入门到精通 光盘源码

    包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP.NET 2.0缓存...

    学通ASP.NET的24堂课

    走进asp.net世界、c#语言基础入门、流程控制语句、面向对象程序设计、asp.net内置对象、常用服务器控件、asp.net验证控件、ado.net数据库开发技术、数据绑定控件、web用户控件、母版页技术应用、网站主题与皮肤、...

    ASP.NET开发技术大全pdf

    《ASP.NET开发技术大全》 ASP.NET操作数据库 ASP.NET内置对象,应用程序配置和缓存 ASP.NET 3.5和AJAX ASP.NET MVC基础 ASP.NET 3.5与LINQ

    ASP.NET 2.0快速入门 下载列表 微软

    本课程介绍asp.NET新的内置控件,通过本课程的学习,可以了解asp.NET 2.0比asp.NET 1.0所增加的新控件的用法,并且了解这些新控件的各种特性.主要是针对没有vs2005开发经验的听众,并希望通过该课程了解vs2005自带...

    ASP.NET编程宝典(十年典藏版).pdf

    第1篇技能学习篇,主要包括ASP.NET技术基础、c#语言基础、流程语句控制和数组、面向对象编程、常用服务器控件、内置对象、验证控件、ADO.NET数据库开发技术、数据控件的应用、Web用户控件、ASP.NET缓存技术、Ajax无...

    ASP.NET内置对象、webconfig、缓存

    以上是asp.net很重要的基础,内置对象、应用程序的配置、缓存,很重要。

    ASP.NET开发技术大全(部分章节电子书)

    ASP.NET开发技术大全(部分章节电子书).  ASP.NET操作数据库  ASP.NET内置对象,应用程序配置和缓存  ASP.NET 3.5和AJAX  ASP.NET MVC基础  ASP.NET 3.5与LINQ

    ASP.NET 3.5开发大全 (中文 PDF 完整书签 非扫描)

    第13章:本章详细的讲解了ASP.NET应用程序的内置对象和缓存等概念,ASP.NET的内置对象维护了Web应用程序的状态,而通过使用缓存能够极大的提高应用程序的抗压性,提高网站的访问效率。 第14章:本章详细的讲解了ASP...

    asp.net教学讲义

    第四章:ASP.NET内置对象 67 4.1内置对象概述 67 4.2 Response对象和Request对象 67 4.2.1 Response对象的功能,常用属性和方法和示例 67 4.2.2 Request对象的功能,常用属性和方法和示例 71 4.3、HttpServerUtility...

    ASP.NET3.5开发大全(全套共29章)

    用户控件和自定义控件【】第12章.ASP.NET的皮肤、主题和母版页【】第13章.ASP.NET内置对象,应用程序配置和缓存【】第14章.ASP.NETXML和WebService【】第15章.图形图像编程【】第16章. 资源太大,传百度网盘了,链接...

    ASP.NET Night Words

    4.4 asp.net内置文件夹介绍 36 4.5 xml注释 37 4.6 任务管理器 38 4.7 配置外部工具 39 4.8 代码段管理器 40 4.9 发布asp.net网站 44 4.10 总结 45 第5章 page类和回调技术 46 5.1 page类介绍 46 5.1.1 单...

    ASP.NET 3.5 开发大全

    第13 章ASP.NET 内置对象,应用程序配置和缓存 第14 章ASP.NET XML 和Web Service 第五篇ASP.NET3.5高级编程 第15 章图形图像编程 第16 章ASP.NET 3.5 和AJAX 第17 章ASP.NET MVC 基础 第18 章WCF 开发基础 第19 章...

    ASP.NET教学讲义,完整章节

    第四章:ASP.NET内置对象 76 4.1内置对象概述 76 4.2 Response对象和Request对象 76 4.3、HttpServerUtility 对象 85 第五章:ASP.NET状态管理 89 5.1 状态管理概述 89 5.2 存储状态的位置 89 5.3 Application—管理...

    ASP.NET内置对象,应用程序配置和缓存.doc

    ASP.NET内置对象,应用程序配置和缓存.doc

    ASP.NET从入门到精通.pdfpart1

    包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP.NET 2.0缓存...

    ASP.NET从入门到精通part2

    包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP.NET 2.0缓存...

Global site tag (gtag.js) - Google Analytics