天天看點

C#開發網站如何提高性能

避免不必要的執行操作

  關閉不必要的Session狀态

<%@ Page EnableSessionState="false" %>

注意使用Server Control

不必要時可以不使用Server Control

不必要時可以關閉ViewState

<asp:datagrid EnableViewState="false“ runat="server"/> 

<%@ Page EnableViewState="false" %>

不要用Exception控制程式流程

try { 

 result = 100 / num;

}

 catch (Exception e) { 

 result = 0;

 }

 if (num != 0) 

 result = 100 / num;

 else

  result = 0; 

禁用VB和JScript動态資料類型

<%@ Page Language="VB" Strict="true" %>

使用存儲過程資料通路

隻讀資料通路不要使用DataSet

使用SqlDataReader代替DataSet

SqlDataReader是read-only, forward-only

關閉ASP.NET的Debug模式

使用ASP.NET Output Cache緩沖資料

頁面緩沖

<%@OutputCache%>

Duration

VaryByParam

片斷緩沖

VaryByControl

資料緩沖

過期依賴條件

Cache.Insert("MyData", Source, 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));

存儲過程,那就不用說了

頁面最好靜态的

全局緩存要做好  

别太多的包含檔案

能用JS實作的效果都用JS實作

能在用戶端實作的就用

分頁使用好的存儲過程,其他的也盡量使用存儲過程

少用些耗費資源的控件,減少回發

記得銷毀資料庫連接配接

不要把所有内容都放在大表格中 而是盡量以橫向分段,一段為一個表格

能用html的就不要用aspx了

能用javascript就不要用cs了

datagrid能不用就不用

session、viewstate、Server Control能不用就關

存儲過程、緩存會用就用,不會就學

隻讀資料使用datareader,很多的資料庫操作使用存儲過程,

使用<%@outputcache Duration=60 VaryByParam="*"%>進行緩存

關閉debug模式

正确使用索引

if (!Page.IsPostBack)進行綁定不需要回傳的代碼

圖檔不要太精确

首頁資料查詢比較多但更新不常用的可以使用aspx動态生成html頁面 

控件不需要經常程式設計的 比如輸入控件等都使用HTML控件

使用Squid緩存技術

大型門戶網站asp.net實作的注意事項

1. 不要用伺服器端控件

2. 全面禁用asp.net的一些頁面級新特性

3. web.config裡的debug要為false,并且dll檔案編譯是要生成為release版本的

4. 盡量不要用dataset。除非用到嵌套循環

5. 運作在win2003企業版上。

6. 用sqlclient或oracleclient通路資料庫這些是asp.net開發大型網站必須要重視的幾點,其它一些就是靜态頁面啊和硬體上的一些問題,這些跟其它大型網站諸如此類

補充:

1、轉向用Server.Transfer,不用Response.Direct

2、ADO對象在一次使用過程中不要重複打開建立,盡量使用一個Connection、一個Command、一個DataReader,并且記得不再調用資料庫資料時馬上關閉、釋放ADO對象

3、資料集采用要多少給多少,杜絕不分字段不分頁

分類:  C# Asp.net

本文轉自快樂就好部落格園部落格,原文連結:http://www.cnblogs.com/happyday56/archive/2008/08/09/1264165.html,如需轉載請自行聯系原作者