北大青鳥技術(shù)指導(dǎo):如何優(yōu)化ASP.NET網(wǎng)站性能

北大青鳥通州校區(qū)學(xué)術(shù)部老師介紹,如果同學(xué)們了解ASP網(wǎng)站和ASP.NET網(wǎng)站,就會發(fā)現(xiàn),如果按正常的思路開發(fā)ASP.NET網(wǎng)站,ASP.NET網(wǎng)站的速度會比ASP網(wǎng)站慢很多,為什么強大的網(wǎng)站語言會比弱得慢的,原因很簡單,正因為他強大,需要執(zhí)行的程序比較多,而服務(wù)器是一樣的,所以肯定ASP.NET網(wǎng)站會比ASP網(wǎng)站慢。

所以北大青鳥通州校區(qū)宋老師根據(jù)多年建站的經(jīng)驗,教同學(xué)們?nèi)绾慰焖偬岣逜SP.NET網(wǎng)站性能:

1、 禁用ViewState  ,VIewState只是當(dāng)頁面回發(fā)時仍能記住頁面狀態(tài),打破WEB先天的無狀態(tài)性,但肯定也造成性能下降,所以如果不是很必要,請不要使用,  具體禁用方法,可在Web.Config或Page開頭加上   EnableViewState="false";

2、 禁用SessionState,你可能會問,如果禁用SessionState,那不是不能使用Session了,怎么進(jìn)行身份驗證呢,其實,除了 Session,還可以使用Cookie,如果怕不安全,可以給Cookie加密,如Window  Form認(rèn)證就是Asp.net內(nèi)置的身份驗證方式。如下:

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ā)布時,禁用調(diào)試,具體在Web.Config文件里設(shè)置<compilation debug="false">;

4、網(wǎng)站采用編譯發(fā)布 ;

5 、使用ASP.NET頁面緩存、控間緩存等提高性能;

6、使用Cache保存經(jīng)常使用的數(shù)據(jù),也就是數(shù)據(jù)緩存;

7、生成靜態(tài)頁面,或把經(jīng)常使用的內(nèi)容生成靜態(tài)文件,調(diào)用。

8、如果數(shù)據(jù)量大,不要使用GridView等內(nèi)置的分頁功能,他們是讀取所有數(shù)據(jù)再分頁的,應(yīng)使用取多少讀多少的分頁方式。

9、采用存儲過程,不但可以節(jié)省網(wǎng)站流量,更是可以提高速度,提高安全性;

10、注意isPostBack ,不要每次頁面回發(fā)重復(fù)執(zhí)行一些操作。(北大青鳥通州校區(qū)學(xué)術(shù)部提供)

北大青鳥網(wǎng)上報名
北大青鳥招生簡章