国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

實現性能目標的幾種方法

2024-07-21 02:16:18
字體:
來源:轉載
供稿:網友
第一次在這里寫blog,希望不要被大家取笑!
一. 調整程序代碼
1.避免多次讀取相同數據
在循環語句中不要包含無端重復執行的代碼,如:
while ( dr.read())
{
if(dr.item["lastname"]==request.params[“lastname“])
return true;
else
return false;
}
在上面循環中,對于datareader返回的每條記錄都要對request.params[“lastname“]進行一次求值,假如dr返回100條記錄,我們就對request.params[“lastname“]求值了100次 ,而這100次有99次都是多余的,下面的代碼相對效率就高些
string strlastname=request.params[“lastname“];
while ( dr.read())
{
if(dr.item["lastname"]==strlastname)
return true;
else
return false;
}

總結:從任何類型的集合中讀取值都比較慢,我們需要多次訪問它時,可以先在局部變量中保存一個副本

2.對連接字符串使用response.write();
連接字符串是一個很費資源的操作,我們要把一個10字節的字符與一個30字節的字符連接起來,代碼必須分配一個40字節的內存區域,復制所有字節到這塊區域,然后在調整指針位置指到這塊區域,在釋放原來資源而response.write()方法提供了高效的緩沖和連接服務,所以一般情況下以下代碼
response.write(“headline=“);
response.write(“strheadline“);
response.write(“,descreption=“);
response.write(dr.item[“descreption“]);
比下列代碼
response.write(“headline=“)&_
strheadline&_
“,descreption=“&_
dr.item[“descreption“];
效率要高
總結:盡量用response.write()和stringbuilder來連接字符串
3.避免頻繁調用com組件轉為托管代碼.
4.避免改變數組維數
在程序中動態改變數組維數其實是用請求大小創建一個新的數組,拷貝原來數組中內容到里面,然后刪除原來數組,并用新數組代替舊數組地址,這就耗費了很大力氣
5.不要過分依賴于代碼中的異常檢查
異常處理是很消耗資源的操作,對于普通代碼能檢測到情況,就應盡少使用異常處理
如try
{
int a,b;
a=100/b;
}
catch
{
b=0;
}
就不如用以下代碼效率高
if(b==0)
{
error();
}
效率高
總結:應盡少量的使用異常處理機制
6。應該實現盡早綁定防止后期綁定,做法為在web頁的@page指令中加入o ption=“strict”這一選項可以防止在數據轉換時都是數據
二。調整asp.net的使用
1.禁用調試和跟蹤模式
在部署產品級應用程序時,用這兩個模式會顯著降低性能
2.預先在application 對象中載入數據
把一些頻繁使用的又相對靜止的數據通過一次性讀取數據載入application 中可以提高程序的性能 application對象一旦建立九一直保存在內存中,直至程序結束,對于webl來說就是服務器關閉,但把
幾mbyte的數據存在application中不是什么好的選擇了
3.用page.ispostback來避免不必要的處理
在實際表單提交時沒有必要運行初始化代碼,viewstate機制會保存我們任何表單的初始化元素
4. 適當使用服務器控件
在控件標記中加runat=server會增加web服務器的負擔.除非有必要處理控件的屬性,在服務器處理控件的事件時候就不要為標記加此屬性
5.在必要的時候使用viewstate
viewstate包含的控件越多,服務器負擔就愈大,利用viewstate還可能惹出麻煩,例如一個顯示錯誤信息的label控件,我們希望不要在每一個頁面上都重復該消息要清除某一控件的viewstate 屬性可以將其enableviewsate屬性設置為false.
6.在沒有使用會話的頁面中禁止用session
7.盡可能的緩存數據和頁面輸出
cache可以大幅度提高性能,我們可以在頁面中編寫outputcache指令
8.避免對服務器進行不必的數據往返傳輸
可以利用驗證控件來減少不必要的往返數據傳輸
后面的比較倉促,老婆催著睡覺,再不睡估計要.....,呵呵.



最大的網站源碼資源下載站,

上一篇:自己動手寫屏保

下一篇:排序算法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 门源| 类乌齐县| 新和县| 康保县| 新宾| 新郑市| 达孜县| 随州市| 焉耆| 鹤岗市| 色达县| 青川县| 三穗县| 阳东县| 平舆县| 泗水县| 电白县| 宁阳县| 阳高县| 西昌市| 论坛| 谷城县| 丘北县| 绍兴市| 柯坪县| 松阳县| 聊城市| 自治县| 西青区| 万全县| 马边| 剑川县| 常德市| 泰和县| 滦平县| 博兴县| 南溪县| 金秀| 滨海县| 安福县| 天长市|