提高ASP.NET性能的一点方法
例如控件或頁面的。EnableViewState屬性設置為false。或者在web.config文件中進行指定。
控件的設定直接設置相應控件的EnableViewState屬性即可。
頁面的設定在<%@ Page EnableViewState="false" %>中設定即可。
Web.Config文件的設定,找到<pages>元素,在其中添加屬性設置EnableViewState="false"即可。
?對于安全性要求不高的頁面可以通過禁用頁面的EnableViewStateMAC防篡改和加密功能,也可以提供頁面加載的速度。
?將代碼中的Response.Redirect跳轉換成Server.Transfer命令。
Response.Redirect使客戶機和服務器之間進行了兩次往返,首先客戶端將自己的跳轉命令傳給服務器,服務器對當前請求跳轉的頁面做出響應,返回要跳轉到的頁面與相應的事件響應,然后客戶端接收到這個命令開始進行跳轉,第二次向服務器發出新的跳轉到的頁面請求,然后服務器做出響應,將新的頁面返回給客戶端。這樣就進行了兩次往返。
Server.Transfer則把執行轉移到應用程序的另一個頁面。這是某種“服務器端的重定向”,客戶端不會察覺到有重定向發生。此時客戶端將跳轉命令發給服務器后,頁面重定向是在服務器上處理的,沒有進行客戶端之間的往返,直接將重定向后的頁面結果發送給客戶端,這樣僅執行了一次客戶端和服務器之間的往返,減少了一次,從而達到性能的提升。
?謹慎使用Web控件,每個Web控件在加載時都比相應的HTML控件在服務器生成時多耗費一些資源,例如一個Lable控件,如果禁用來顯示一個標題,則沒有必要每次都讓服務器重新生成它,直接換成幾個字顯示就可以了,因為這些控件必須被初始化,必須設置屬性,事件必須處理等。
?把對象放置到會話狀態中,以后再使用。這是非常方便的,但這種方便性是有代價的。會話狀態默認是啟用的,這意味著ASP.NET為使會話狀態功能可用需要做很多工作,即使您根本不使用會話狀態也是如此。因此,對于不執行任何會話處理的頁面來說,應該覆蓋它們的默認值。
禁用會話狀態的方法是在Page指令中把EnableSessionState特性設為false。
如果一個頁面從會話狀態讀取值(但不寫新的值或修改現有的值),那么它是以某種只讀的方式使用會話狀態。在這些情況下,可以把EnableSessionState設為ReadOnly,這可以讓頁面訪問會話狀態,但開銷較少(因為省略了寫的功能)。
如果應用程序中任何地方不使用會話狀態,可以在應用程序級別關閉會話狀態:在Web.Config文件中把<SessionState>元素的mode特性設為Off。
總結
以上是生活随笔為你收集整理的提高ASP.NET性能的一点方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两大主流Web服务器之分析与对比
- 下一篇: 一个经典算法