五月综合缴情婷婷六月,色94色欧美sute亚洲线路二,日韩制服国产精品一区,色噜噜一区二区三区,香港三级午夜理伦三级三

您現(xiàn)在的位置: 365建站網(wǎng) > 365文章 > ASPNET代碼提高性能的方法大綜合

ASPNET代碼提高性能的方法大綜合

文章來源:365jz.com     點(diǎn)擊數(shù):238    更新時(shí)間:2009-09-16 11:50   參與評論

1、  避免不必要的操作.例如:在Page_Load中使用IsPostBack;
2、  盡量減少使用服務(wù)器端控件
3、  關(guān)閉不必要的頁面Session和控件的ViewState <%@Page EnableSessionState =”false”%>
4、  禁用VB和JSP動態(tài)類型   <%@Page Language=”VB” Strict=”true”%>
5、  使用存儲過程
6、  使用DateReader代替DataSet
7、  關(guān)閉ASP.Net的Debug模式
8、  使用ASP.Net的Output Cache緩沖
<%@ OutputCache Duration=60 VaryByParam=”None” %>
<%@ OutputCache Duration=60 VaryByParam=”TextBox1,TextBox2” %>
說明: Duration是設(shè)置Cache的過期時(shí)間;
     VarByParam是設(shè)置是否根據(jù)參數(shù)而變化,None時(shí)所有參數(shù)使用同一Cache,設(shè)置TextBox1時(shí)則根據(jù)TextBox1的不同值分別緩存;當(dāng)有多個(gè)參數(shù)時(shí)則要組合緩存;
9、  不要使用Exception控制程序流程
try
{
       result=100/num;
}
catch(Exception e)

{
       result=0;
}
 
if(num!=0)
       result = 100/num;
else
       result=0;
 
四、緩沖分類:
1頁面緩沖:根據(jù)VarByParam來進(jìn)行不同的緩沖處理。
2片段緩沖:在頁面控件中使用頁面緩沖,當(dāng)一個(gè)頁面里多次使用同一個(gè)頁面控件時(shí),需要根據(jù)VarByControl來進(jìn)行不同的緩沖處理。
3數(shù)據(jù)緩沖: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))

 

1、避免不必要的執(zhí)行操作
2、關(guān)閉不必要的Session狀態(tài)
3、注意使用Server Control 不必要時(shí)可以不使用Server Control
4、不必要時(shí)可以關(guān)閉ViewState
5、不要用Exception控制程序流程
try {
result = 100 / num;
}
 catch (Exception e) {
result = 0;
 }
6、只讀數(shù)據(jù)訪問不要使用DataSet 使用SqlDataReader代替DataSet
7、關(guān)閉ASP.NET的Debug模式  web.config里的debug要為false,并且dll文件編譯是要生成為release版本的
8、使用ASP.NET Output Cache緩沖數(shù)據(jù)
9、對大量使用的很少更新的數(shù)據(jù)進(jìn)行數(shù)據(jù)緩沖
9、盡量使用存儲過程數(shù)據(jù)訪問
10、頁面能靜態(tài)的就不要?jiǎng)討B(tài)
11、能用JS實(shí)現(xiàn)的效果都用JS實(shí)現(xiàn),能在客戶端實(shí)現(xiàn)的就減少回發(fā)
12、轉(zhuǎn)向用Server.Transfer,不用Response.Direct
13、ADO.NET對象在一次使用過程中不要重復(fù)打開創(chuàng)建,盡量使用一個(gè)Connection、一個(gè)Command、一個(gè)DataReader,并且記得不再調(diào)用數(shù)據(jù)庫數(shù)據(jù)時(shí)馬上關(guān)閉、釋放
14、數(shù)據(jù)集采用要多少給多少,杜絕不分字段不分頁
15、能不用DataSet/DataGrid就不要使用
16、運(yùn)行在win2003企業(yè)版上


1的原因就不用提了吧
2減少消耗內(nèi)存
3減少server control解釋成html的時(shí)間
4減少傳遞時(shí)增加的隱藏?cái)?shù)據(jù),同時(shí)也減小傳輸文件
5為什么非讓它撞南墻再回頭
6SqlDataReader效率高于DataSet
7正是版本不應(yīng)用Debug
8Output Cache緩沖的頁聽說比靜態(tài)也還快(直接從內(nèi)存輸出連文件都不用讀)
9同樣的數(shù)據(jù),預(yù)先拿出來,放到內(nèi)存總比在數(shù)據(jù)庫或文件中快吧
9存儲過程是數(shù)據(jù)庫預(yù)先優(yōu)化和編譯的
10動態(tài)的需要先解釋啊
11辦一件事,故意讓你來回跑上幾趟,你樂意嗎?
12Response.Direct需要先回到客戶那里報(bào)個(gè)到
13本來你手中有個(gè)筆,可是寫字時(shí)你卻先放下,再換一個(gè)
14要枝給樹
15我認(rèn)為DataGrid過于花哨,DataSet用來緩存數(shù)據(jù)很好,經(jīng)常要換的話就浪費(fèi)了
16win2003企業(yè)版是集成.NET的操作系統(tǒng)

1.注意關(guān)閉不必要的Session狀態(tài).
2.不必要時(shí),可以不使用Server Control 。并注意不需要時(shí)關(guān)閉View State
3.不要用異常處理來控制程序流程。很多的地方可以用條件判斷。
4.禁用VBS、JS的動態(tài)數(shù)據(jù)類型。
5.注意關(guān)閉Debug模式。
6.注意使用OutputCache。
數(shù)據(jù)訪問:
1.盡量使用存儲過程。
2.只讀數(shù)據(jù)訪問不要使用DateSet。
3.數(shù)據(jù)庫設(shè)計(jì)室。盡量使各個(gè)模塊以及表相獨(dú)立。以便日后利于分布數(shù)據(jù)庫。

Tag標(biāo)簽: asp.net 代碼提高性能

如對本文有疑問,請?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會為你解答??! 點(diǎn)擊進(jìn)入論壇

發(fā)表評論 (238人查看,0條評論)
請自覺遵守互聯(lián)網(wǎng)相關(guān)的政策法規(guī),嚴(yán)禁發(fā)布色情、暴力、反動的言論。
昵稱:
最新評論
------分隔線----------------------------

其它欄目

· 建站教程
· 365學(xué)習(xí)

業(yè)務(wù)咨詢

· 技術(shù)支持
· 服務(wù)時(shí)間:9:00-18:00
365建站網(wǎng)二維碼

Powered by 365建站網(wǎng) RSS地圖 HTML地圖

copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號