如果你是一個(gè)做過(guò)ASP網(wǎng)站,又做過(guò)ASP.NET網(wǎng)站的程序員,你可能會(huì)發(fā)現(xiàn),如果按正常的思路開(kāi)發(fā)ASP.NET網(wǎng)站,ASP.NET網(wǎng)站的速度會(huì)比ASP網(wǎng)站慢很多,為什么強(qiáng)大的網(wǎng)站語(yǔ)言會(huì)比弱得慢的,原因很簡(jiǎn)單,正因?yàn)樗麖?qiáng)大,需要執(zhí)行的程序比較多,而服務(wù)器是一樣的,所以肯定ASP.NET網(wǎng)站會(huì)比ASP網(wǎng)站慢,那么如何提高ASP.NET網(wǎng)站的打開(kāi)速度,發(fā)揮ASP.NET語(yǔ)言的威力呢?創(chuàng)新互聯(lián)總結(jié)了如下方法:
1、禁用ViewState ,VIewState只是當(dāng)頁(yè)面回發(fā)時(shí)仍能記住頁(yè)面狀態(tài),打破WEB先天的無(wú)狀態(tài)性,但肯定也造成性能下降,所以如果不是很必要,請(qǐng)不要使用, 具體禁用方法,可在Web.Config或Page開(kāi)頭加上 EnableViewState="false";
2、禁用SessionState,你可能會(huì)問(wèn),如果禁用SessionState,那不是不能使用Session了,怎么進(jìn)行身份驗(yàn)證呢,其實(shí),除了Session,還可以使用Cookie,如果怕不安全,可以給Cookie加密,如Window Form認(rèn)證就是Asp.net內(nèi)置的身份驗(yàn)證方式。如下:
<authentication mode="Forms">
<forms name="River_Form" loginUrl="~/Login.aspx" defaultUrl="~/Default.aspx" protection="All" timeout="120000" path="/" requireSSL="false" slidingExpiration="true" enableCrossAppRedirects="false" cookieless="UseDeviceProfile"/>
</authentication>
3、網(wǎng)站發(fā)布時(shí),禁用調(diào)試,具體在Web.Config文件里設(shè)置<compilation debug="false">;
4、網(wǎng)站采用編譯發(fā)布 ;
5 、使用ASP.NET頁(yè)面緩存、控間緩存等提高性能;
6、使用Cache保存經(jīng)常使用的數(shù)據(jù),也就是數(shù)據(jù)緩存,數(shù)據(jù)緩存有普通緩存、文件依賴(lài)緩存、SQL依賴(lài)緩存等。
7、生成靜態(tài)頁(yè)面,或把經(jīng)常使用的內(nèi)容生成靜態(tài)文件,調(diào)用。
8、如果數(shù)據(jù)量大,不要使用GridView等內(nèi)置的分頁(yè)功能,他們是讀取所有的數(shù)據(jù)再分頁(yè)的,應(yīng)使用取多少讀多少的分頁(yè)方式。一般這種大數(shù)據(jù)量的分頁(yè)方式有存儲(chǔ)過(guò)程和SQL語(yǔ)句兩種,如果是MSSQL2005數(shù)據(jù)庫(kù)可以采用Row_number函數(shù)分頁(yè)更方便。
9、采用存儲(chǔ)過(guò)程,不但可以節(jié)省網(wǎng)站流量,更是可以提高速度、提高安全性,因?yàn)椴捎么鎯?chǔ)過(guò)程,可以減少SQL語(yǔ)句傳送消費(fèi)的時(shí)間和寬帶,同時(shí)存儲(chǔ)過(guò)程采用參數(shù)化方式,減少SQL注入的可能;
10、注意isPostBack ,不要每次頁(yè)面回發(fā)重復(fù)執(zhí)行一些操作。
11、需要注意控件的選擇:
DataReadear比DataSet快15%
SqlDataReader比OleDbDataReader快50%
用DataReader的ASP風(fēng)格的表格顯示比DataGrid綁定DataReader快60%
用Ordinal的DataReader訪問(wèn)字端比用名字訪問(wèn)快15%
DataGrid中用AutoGenerateColumns=true比用顯式綁定快24%
所以,選擇控件很重要,能滿(mǎn)足需求的情況下用速度最快的控件。
12、頁(yè)面代碼采用DIV+CSS代碼,因?yàn)閭鹘y(tǒng)的Table布局加載比較慢,代碼也比較多,也會(huì)造成速度瓶頸。
13、如非必要,JS文件好在頁(yè)面最后加載。
14、使用CSS Spire,就是把一個(gè)頁(yè)面用到的背景圖片都集合在一個(gè)文件里,減少頁(yè)面的請(qǐng)求次數(shù),從而加快網(wǎng)站速度。
文章標(biāo)題:創(chuàng)新互聯(lián)談如何提高ASP.NET網(wǎng)站的打開(kāi)速度.
網(wǎng)頁(yè)鏈接:http://muchs.cn/news31/247531.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、響應(yīng)式網(wǎng)站、小程序開(kāi)發(fā)、Google、建站公司、品牌網(wǎng)站設(shè)計(jì)
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源:
創(chuàng)新互聯(lián)