ASP.NET性能筆錄zz

並不是在項目開發完畢後進行性能優化,而是在初步設計的時候考慮的問題

1 性能評測
(1) Client響應時間(TTLB-TTFB);網絡帶寬和web程序因素的影響。一般不能超過8secends;
(2) 服務器吞吐量(處理請求/秒)。

2 評測方法-Stress Testing壓力測試
   工具 - Web Application Stress Tool
http://www.microsoft.com/techent/treeview/default.asp?url=/technet/itsolutions/intranet/downloads/webstres.asp
ACT(VS.NET Enterprise帶有的工具)

3 性能關注
(1) CPU使用率;
(2) Request In Application Queue請求緩存排隊,如果出現線性增長表示服務器達到滿負荷;
(3) Request/Sec;
(4) ErrorsTotal(應=0);

4 壓力測試注意
(1) 獨立於web服務器運行測試工具;
(2) 模擬不同的客戶端帶寬級別;
(3) 消除應用之外的任何瓶頸(例如網絡)。

5 邏輯設計 建議:3層模型
page(.aspx) and User Controls (.ascx)UI
Business and Data Access classes in \bin dir
Data within a SQL Database via SPROCs

6 DataReader VS DataSet
(1) DataReader: 單向讀取;輕量快速;
(2) DataSet: 非連接的數據訪問;內部利用DataReader讀取數據;完成讀取後自動關閉;
(3) On average,a datareader is 16% faster than DataSet

7 連接池
(1) 自動緩存/重新使用連接;
(2) 盡晚打開連接,儘早關閉;
(3) 不同的連接字符串會看成不同的連接池;
(4) 在web.config存儲單個連接字符串,然後讀取;

8 使用存儲過程
(1) DBA可以更輕鬆的性能調試;
(2) 防止SQL注入攻擊;
(3) 在企業管理器裏面關閉動態SQL支持,強制使用存儲過程;

9 服務器控件性能優化重點
(1) ViewState
(2) Number of controls generated(especially for lists)

10 ViewState管理
(1) ASP.NET controls能夠維護頁面Control元素的狀態;
(2) 頁面PostBack,ViewState就會被提交;
(3) 好處:填寫的信息可以再次顯示,有些數據綁定無需重新從數據庫裏面提取;
(4) 負面:增加網絡負荷,服務器性能消耗;

11 利用緩存技術
OutputCaches

12 性能配置
debug="false"

 

轉載於:https://www.cnblogs.com/happyhippy/archive/2007/03/10/670632.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章