<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        分享提高ASP.NET Web應用性能的技巧

        來源:懂視網 責編:小采 時間:2020-11-27 22:37:56
        文檔

        分享提高ASP.NET Web應用性能的技巧

        分享提高ASP.NET Web應用性能的技巧:在這篇文章中,將介紹一些提高 ASP.NET Web 應用性能的方法和技巧。眾所周知,解決性能問題是一項繁瑣的工作,當出現性能問題,每個人都會歸咎于編寫代碼的開發人員。 那性能問題到底該如何解決?以下是應用系統發布前,作為 .NET 開發人員需要檢查的點。 1
        推薦度:
        導讀分享提高ASP.NET Web應用性能的技巧:在這篇文章中,將介紹一些提高 ASP.NET Web 應用性能的方法和技巧。眾所周知,解決性能問題是一項繁瑣的工作,當出現性能問題,每個人都會歸咎于編寫代碼的開發人員。 那性能問題到底該如何解決?以下是應用系統發布前,作為 .NET 開發人員需要檢查的點。 1

        在這篇文章中,將介紹一些提高 ASP.NET Web 應用性能的方法和技巧。眾所周知,解決性能問題是一項繁瑣的工作,當出現性能問題,每個人都會歸咎于編寫代碼的開發人員。

        那性能問題到底該如何解決?以下是應用系統發布前,作為 .NET 開發人員需要檢查的點。

        1.debug=「false」

        當創建 ASP.NET Web應用程序,默認設置為「true」。開發過程中,設置為「true」是非常有用多,但在應用程序發布部署時,需將其設置為「false」。

        <compilation defaultLanguage="C#" debug="false" targetFramework="4.0" /> 
        
        

        2.關閉 tracing(追蹤)

        tracing 是非常可怕的,你有沒有忘記關閉它。假如沒用,請確定編輯 web.config 并且關閉它。它將占用大量您的程序資源。

        <trace enabled="false" requestLimit=”10” pageoutput=”false” traceMode=”SortByTime” localOnly=”true”> 
        

        3.禁用 session

        假如您用不到 session 會話跟蹤請務必禁用它。您可以在每個 asp.net 頁面中設置如下:

        <%@ page language="c#" codebehind="webform1.aspx.cs" autoeventwireup="false" inherits="webapplication1.webform1"
        
        enablesessionstate="false" %> 
        
        

        4.使用發布版本部署應用

        部署應用程序到生產環境時,要確保使用的發布版本模式,而不是調試模式。如果使用調試模板極容易發生請求超時。部署成發布版本,你將會發現速度有很大的提升。

        5.關閉頁面的 View State

        View State 主要是在提交以后回顯用的,它只有在頁面中的數據是提交到本頁時才有用。其默認是「true」。如果你沒有使用表單數據回傳,那么可以關閉 View State。

        <%@ Page EnableViewState="false" %> 
        

        6.避免使用 Response.Redirect

        Redirect(重定向)非常麻煩,它僅用于用于從當前物理服務器開發跳轉到其它服務器。如果只是在本服務器開發內頁面跳轉請使用 Server.Transfer 語法,這樣會減少很多沒有必要的客戶端重定向。

        7.運用 StringBuilder 類以及使用 ToString()方法

        String 類對象是不可改變的,對于 String 對象的重新賦值在本質上是重新創建了一個 String 對象并將新值賦予該對象,其方法 ToString 對性能的提高并非很顯著。在處理字符串時,最好使用 StringBuilder 類,其 .NET 命名空間是 System.Text。該類并非創建新的對象,而是通過 Append,Remove,Insert 等方法直接對字符串進行操作,通過 ToString 方法返回操作結果。 其定義及操作語句如下所示

        int num; 
          System.Text.StringBuilder str = new System.Text.StringBuilder(); //創建字符串 
          str.Append(num.ToString()); //添加數值num 
          Response.Write(str.ToString); //顯示操作結果
        

        8.避免拋出異常

        異常會導致速度變慢,并且使得應用程序頁面顯示異常,使得無法進行其他操作。可以使用 try / catch 使出現的異常記錄到日志文件中。

        9.使用 finally 方法回收資源

        假如你在應用開發中大量使用其他數據庫連接和訪問文件,請確定在用完后關閉它們。finally 塊是程序中最后被執行,因此在這里面的代碼會確保一定會被執行,關閉代碼一定要在這個開發方法塊中執行。

        10.使用客戶端腳本驗證

        用客戶端驗證代替服務器開發端驗證。服務器開發端數據驗證將會大量消耗您的服務器開發上的資源,并且會代來大量的頁面數據回傳。

        11.使用 Page.IsPostback

        請確保不執行過多的回傳代碼。使用 Page.IsPostBack 屬性,以確保只執行頁面初始化邏輯,當一個頁面第一次加載,而不向響應客戶回發。

        12.使用分頁

        大多數 Web 應用程序數據是以表格形式顯示。分頁有利用應用開發程序效率。每次盡量顯示小部分數據,這樣會加快頁面顯示速度。

        13.使用 Ajax 異步調用

        使用 Ajax 方法,進行異步調用。

        14.刪除未使用的 HttpModules

        對于 httpModules,我們可以理解為:建立一個通用的可用被插入任何 Web 應用程序的 HttpApplication 事件鉤子。使用 HttpModule 是可復用的,不需要特定語應用程序代碼的,只需要 web.config 中的一個條目。 在 web.config 文件中,刪除未使用的 HttpModules。

        15.避免遞歸函數/嵌套循環

        在任何編程語言中都需避免嵌套循環和遞歸函數,以提高性能。

        16.不使用不必要的 Server Control

        ASP.NET 中,大量的服務器端控件方便了程序開發,但也可能帶來性能的損失,因為用戶每操作一次服務器端控件,就產生一次與服務器端的往返過程。因此,非必要,應當少使用 Server Control。

        17.調用多個操作時,請使用多線程

        問題出現時,單線程卡在此問題上長時間運行。因此,可以使用多個線程以提高應用程序的響應速度。

        18.數據庫的連接和關閉

        訪問數據庫資源需要創建連接、打開連接和關閉連接幾個操作。這些過程需要多次與數據庫交換信息以通過身份驗證,比較耗費服務器資源。ASP.NET 中提供了連接池(Connection Pool)改善打開和關閉數據庫對性能的影響。系統將用戶的數據庫連接放在連接池中,需要時取出,關閉時收回連接,等待下一次的連接請求。連接池的大小是有限的,如果在連接池達到最大限度后仍要求創建連接,必然大大影響性能。因此,在建立數據庫連接后只有在真正需要操作時才打開連接,使用完畢后馬上關閉,從而盡量減少數據庫連接打開的時間,避免出現超出連接限制的情況。

        19.將 SqlDataReader 類用于快速只進數據游標

        SqlDataReader 類提供了一種讀取從 SQL Server 數據庫檢索的只進數據流的方法。如果當創建 ASP.NET 應用程序時出現允許您使用它的情況,則 SqlDataReader 類提供比 DataSet 類更高的性能。情況之所以這樣,是因為 SqlDataReader 使用 SQL Server 的本機網絡數據傳輸格式從數據庫連接直接讀取數據。另外,SqlDataReader 類實現 IEnumerable 接口,該接口也允許您將數據綁定到服務器控件。有關更多信息,請參見 SqlDataReader 類。有關 ASP.NET 如何訪問數據的信息,請參見通過 ASP.NET 訪問數據。

        20.高性能的 SQL 語句規則

      1. 盡量避免全表掃描
      2. 盡量避免在 where 子句中對字段進行 null 值判斷
      3. 盡量避免在 where 子句中使用 != 或 <> 操作符
      4. 盡量避免在 where 子句中使用 or 來連接條件
      5. in 和 not in 也要慎用
      6. 不要在 where 子句中的「=」左邊進行函數、算術運算或其他表達式運算
      7. Update 語句,如果只更改1、2個字段,不要Update全部字段
      8. 對于多張大數據量(這里幾百條就算大了)的表JOIN,要先分頁再JOIN,否則邏輯讀會很高,性能很差
      9. 盡可能的使用 varchar/nvarchar 代替 char/nchar 
      10. 21.緩存

        緩存是一種用空間換取時間的技術,通俗點也就是說把你得到的數據存放在內存中一段時間,在這短時間內服務器不去讀取數據庫、或是真實的數據源,而是讀取你存放在內存中的數據。 緩存是網站性能優化不可缺少的一種數據處理機制,他能有效的緩解數據庫壓力。 ASP.NET 中的緩存主要分為:

      11. 頁面緩存
      12. 數據源緩存
      13. 自定義數據緩存
      14. 22.做負載均衡和服務器加成

        負載均衡不應該僅僅被看作是實現可擴展性的一種手段。盡管它肯定提高了可擴展性,很多時候它增加了 Web 應用程序的性能,因為請求和用戶都散發著多個服務器。

        23.通過 FxCop 做代碼檢查和優化

        FxCop 是一個代碼分析工具,它使用基于規則的引擎,來檢查出你代碼中不合規范的部分;你也可以定制自己的規則加入到這個引擎。其中的一些規則是:

      15. 避免過多的局部變量
      16. 避免使用未調用的私有代碼
      17. 避免未實例化的內部類
      18. 避免使用未密封的特性
      19. 避免進行不必要的強制轉換
      20. 以內聯方式初始化引用類型的靜態字段
      21. 用 NeutralResourcesLanguageAttribute 標記程序集
      22. 將成員標記為 Static 等等。
      23. 24.ASP.NET 性能監控工具

        這些是用于監視代碼的性能的工具。

      24. .NET 內存分析器
      25. Red Gate ANTS 性能分析工具
      26. Fiddler
      27. 性能計數器
      28. 以上是一些性能調整的提示。性能調優不是一天兩天的工作,而是一個反反復復的過程。對于網站開發人員來說,在編寫 ASP.NET 應用程序時注意性能問題,養成良好的習慣,提高應用程序性能,至少可以推遲必需的硬件升級,降低網站的成本。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        分享提高ASP.NET Web應用性能的技巧

        分享提高ASP.NET Web應用性能的技巧:在這篇文章中,將介紹一些提高 ASP.NET Web 應用性能的方法和技巧。眾所周知,解決性能問題是一項繁瑣的工作,當出現性能問題,每個人都會歸咎于編寫代碼的開發人員。 那性能問題到底該如何解決?以下是應用系統發布前,作為 .NET 開發人員需要檢查的點。 1
        推薦度:
        標簽: 方法 技巧 提高
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 永久免费在线观看视频| 亚洲精品国产摄像头| 亚洲电影在线免费观看| h视频免费高清在线观看| 夜色阁亚洲一区二区三区| 色五月五月丁香亚洲综合网| 乱人伦中文视频在线观看免费| APP在线免费观看视频| 亚洲精品视频免费观看| 成人免费网站视频www| 亚洲午夜国产片在线观看| 久久九九久精品国产免费直播| 免费a级黄色毛片| 国产亚洲A∨片在线观看| 你懂的在线免费观看| 久久国产亚洲电影天堂| 羞羞漫画登录页面免费| 久久久久久国产a免费观看黄色大片| 亚洲成熟xxxxx电影| 国产大片免费网站不卡美女 | 亚洲码欧美码一区二区三区| 国产精品高清免费网站| 国产亚洲精品观看91在线| 95老司机免费福利| 亚洲精品国产福利一二区| 国产在线精品观看免费观看| 水蜜桃亚洲一二三四在线| 久久久久久国产a免费观看黄色大片 | 亚洲精品成人久久久| 国产精品无码永久免费888| 久久久综合亚洲色一区二区三区 | 久久久久亚洲精品无码系列| 亚洲精品视频免费看| 国产精品亚洲专区无码牛牛| 日日噜噜噜噜夜夜爽亚洲精品| 国产精品偷伦视频免费观看了 | 野花高清在线观看免费3中文| 亚洲情侣偷拍精品| 在线人成精品免费视频| 无套内谢孕妇毛片免费看看| 久久综合亚洲鲁鲁五月天|