编号
|
方案
|
说明
|
状态
|
1
|
在部署应用程序时,应该关闭Debug模式,这将有效提高应用程序性能(web.config文件的debug=false)
|
|
|
2
|
在部署应用程序时,使用RELEASE模式进行编译发布,优化程序资源!
|
|
|
3
|
尽量避免使用throw Exception,减少额外的开销
提供用户一个友好的出错页面
|
protected
void Application_Error(Object sender, EventArgs e)
{
……
.
Application["error"] = error;
Response.Redirect("MyErrorPage.aspx");
}
由于捕获的异常,所以性能提升不大,但提供了统一的友好的出错信息页面
|
|
4
|
对适当的动态页面进行页面级缓存<%@ OutputCache Duration="60" VaryByParam="*" %>,提高访问速度!
两种情况:
1. 按照参数不同,进行不同版本的缓存
2. 按照URL不同,进行不同版本的缓存
例如:
http://010.52tong.com
http://021.52tong.com
|
Aspx页面中:
<%@ OutputCache Duration="300" VaryByParam="id" VaryByCustom="ceshi" %>
Global.asax中:
public
override string GetVaryByCustomString(HttpContext context, string arg)
{
if (arg == "ceshi")
{
string s_cs=Request.Url.ToString();
return Request.Url.ToString() ;
}
return base.GetVaryByCustomString( context, arg);
}
|
|
5
|
尽量使用存储过程完成数据操作
|
|
|
6
|
对于只读的数据访问
, 使用
DateReader代替DataSet
|
|
|
7
|
关闭不必要的
ViewState
|
使用 ViewState 时,每个对象都必须先序列化到 ViewState 中,然后再通过回传进行反序列化,因此使用 ViewState 并非是没有代价的。<input type="hidden"
没有进行加密,ViewState 只是进行了 Base64 编码
每个控件(在标记上) <asp:datagrid EnableViewState="false" ?/>
每个页面(在指令中) <%@ Page EnableViewState="False" ?%>
每个应用程序(在 web.config 中) <Pages EnableViewState="false" ?/>
|
|
8
|
调整数据库
SQL语句
|
前提:需要在完全理解业务逻辑的情况下
|
|
9
|
调整索引
|
|
|