asp.net程式效能最佳化總結

來源:互聯網
上載者:User

asp.net程式效能最佳化總結

——備忘具體技術 細節請查詢

1.          緩衝:頁面OutPut緩衝(根據參數VaryByParams,Location、儲存到硬碟)、User Control的片斷緩衝(VaryByControl=”Con”:針對此控制項所在的每個頁面建立單獨的緩衝條目)、緩衝API、資料緩衝(檔案依賴、時間依賴、相對到期依賴)、回調緩衝(<asp:Substitution />)。

2.          資料處理方面的最佳化:

a)          返回大量資料且不做大量處理,傳回型別用SqlDataReader,唯讀資料訪問不要使用DataSet。

b)         使用預存程序,好處:1、有助於處理複雜業務。2、可擴充性,資料庫結構改變,易於維護修改。3、減少網路傳輸時間。4、先行編譯,速度比執行Sql語句快很多。

c)          查詢語句最佳化:SET FORCEPLAN強制Sql Server按表出現順序使用表。用它選擇表連接順序。

d)         資料庫連接使用完畢立即關閉,使用using自動關閉,比手動關閉哪個優?(待查詢)

e)          最佳化查詢語句。不在查詢語句中包含子查詢語句,充分利用索引。

f)          對資料進行分頁,按頁碼和每頁條數返回每次請求所需資料。[f、g見9]

g)          返回多個資料集。用SqlCommand對象的ExecuteReader方法返回一個強型別的業務對象,再調用NextResult方法來移動資料集指標來定位元據集,但必須把商務邏輯寫到預存程序裡面

3.          頁面最佳化:

a)          無特殊要求,使(整頁模式狀態)EnableViewState=false。如:頁面無需回傳或者每次僅只是呈現。

b)         頁面配置:用FlowLayout比GridLayout(絕對位置,代碼多)好。

c)          盡量使用html控制項,能用javascript的就用。資料控制項選擇:Repeater>Datalist>DataGrid

4.          字串操作:”s” + 2.ToString(); 使用StringBuilder。

5.          採用 Server.Transfer 文法避免不必要的用戶端重新導向。

6.          啟用網路園藝。

7.          最佳化web伺服器:

a)          僅對需要的應用啟用身分識別驗證。

b)         考慮對應用程式禁用 AutoEventWireup,需重寫Page.OnLoad(),而不能直接使用Page_Load()

c)          從請求處理管線中移除不用的模組。Machine.config 檔案中 <httpModules> 節點預設為啟用,如果在應用程式中不使用工作階段狀態和輸出緩衝,則可以從 <httpModules>列表中移除它們。

8.          關閉ASP.NET的Debug模式

9.          其他額外:(沒用過,不懂) http://dotnet.mblogger.cn/mark_lee/posts/6329.aspx似乎只針對Server 2003。

a)          IIS6.0中啟用Gzip壓縮發送資料,要修改IIS6.0的xml設定檔。

b)         用IIS6.0的Kernel Caching

c)          幕後處理。System.Threading命名空間下Timer類。如:提交一個新文章……檢查,發郵件…

10.        

11.        

12.        

13.        

14.        

15.        

16.        

17.        

18.        

19.        

20.        

21.        

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.