提高ASP.NET性能的若干方法
一、性能参数:
1、 吞吐量
2、 响应时间
3、 执行时间
4、 可伸缩性
二、性能因素:
1、ASPX执行环境
2、编写代码逻辑
三、提高性能的方法:
1、 避免不必要的操作.例如:在Page_Load中使用IsPostBack;
2、 尽量减少使用服务器端控件
3、 关闭不必要的页面Session和控件的ViewState <%@Page EnableSessionState =”false”%>
4、 禁用VB和JSP动态类型 <%@Page Language=”VB” Strict=”true”%>
5、 使用存储过程
6、 使用DateReader代替DataSet
7、 关闭ASP.Net的Debug模式
8、 使用ASP.Net的Output Cache缓冲
<%@ OutputCache Duration=60 VaryByParam=”None” %>
<%@ OutputCache Duration=60 VaryByParam=”TextBox1,TextBox2” %>
说明: Duration是设置Cache的过期时间;
VarByParam是设置是否根据参数而变化,None时所有参数使用同一Cache,设置TextBox1时则根据TextBox1的不同值分别缓存;当有多个参数时则要组合缓存;
9、 不要使用Exception控制程序流程
try
{
result=100/num;
}
catch(Exception e)
{
result=0;
}
if(num!=0)
result = 100/num;
else
result=0;
四、缓冲分类:
1页面缓冲:根据VarByParam来进行不同的缓冲处理。
2片段缓冲:在页面控件中使用页面缓冲,当一个页面里多次使用同一个页面控件时,需要根据VarByControl来进行不同的缓冲处理。
3数据缓冲:Cache(范围是和Application一样,所有用户)
Cache.Insert(“MyData”,Source,null,new CacheDependency(Server.MapPath(“authors.xml”)));
Cache.Insert(“MyData”,Source,null,DateTime.Now.AddHours(1),TimeSpan.Zero);
Cache.Insert(“MyData”,Source,null,DateTime.Maxvalue,TimeSpan.FromMinutes(20));