狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當前位置:系統之家 > 技術開發教程 > 詳細頁面

優化ASP.NET應用程序性能研究與探討

優化ASP.NET應用程序性能研究與探討

更新時間:2019-11-12 文章作者:未知 信息來源:網絡 閱讀次數:



  網站的性能對于ASP.NET程序開發人員來說非常重要。一個優秀的網站雖然有美觀的頁面設計,完善的服務功能,但是打開網頁時有長時間的延遲,用戶最終將會無法忍受。尤其對于大型的電子商務網站而言,每秒鐘有數萬用戶同時訪問,沒有良好的網站性能,根本無法滿足龐大的需求。

  ASP.NET作為全新一代的動態網頁生成系統,它在平臺性能方面與原有的ASP相比已有了一個本質的提高。但要在此基礎上開發出專業水準的、符合生產標準的、受用戶歡迎的web應用程序,還需要開發人員從編程的角度在頁面、數據訪問和字符串處理等各方面進行優化處理,以提高網站的總體性能。

  本文將主要探討在ASP.NET中與此相關的幾種進行性能優化的方法及注意問題。

  頁面性能優化

  1、會話狀態的恰當選擇

  HTTP協議是一種無狀態的通信協議,無法記錄和識別來自不同客戶端的請求,但在實際應用中系統卻要維護來自客戶端的不同請求之間的會話狀態信息。ASP.NET通過將會話狀態信息存儲在進程、狀態服務器或SQL Server數據庫中來解決這個問題。

  將會話狀態信息保存在WEB服務器的內存中具有最佳的性能,速度很快,但是卻缺乏會話狀態信息跨越多個服務器的能力。若要在多個WEB服務器之間維護會話信息,可以使用狀態服務器進行存儲,這種方式由于可以將應用程序部署到多臺服務器上而提高了系統的伸縮性和可靠性,但是以降低性能為代價。對于極其重要的會話信息,需要使用SQL Server存儲方式,從而避免丟失重要的會話信息,但由此產生的工作負載比前兩者大得多。

  若不考慮狀態信息的保留和多個服務器共享,應盡量選擇保存在服務器的進程中,從而得到最佳的性能。

  會話狀態信息的存儲方式選擇通過web.config文件:

 。約essionState
  mode="InProc/StateServer/SqlServer" //存儲方式由此行選擇
  stateConnectionString="tcpip=127.0.0.1:42424"
  ……
  timeout="20"/>

  2、服務器控件的優化選擇

  2.1 減少不必要的服務器控件

  服務器控件帶來的方便和功能是html控件所不能比擬的。但是每一個服務器控件都需要在服務器端創建相應的對象,是以犧牲服務器端的資源為代價的,過多的使用服務器控件會極大的影響程序性能。

  很多情況下,簡單地使用html標記或數據綁定即能夠實現所需功能。比如<asp:Label>控件,若使用它來顯示靜態信息,則完全可用簡單的標記來實現。如果html控件達不到所要實現的功能,而且在腳本語言如javascript、vbscript也不能實現的情況下,才考慮選擇服務器控件。

  2.2 禁用不必要的狀態視圖

  服務器控件的狀態視圖屬性能夠自動的在頁面往返過程中維護服務器控件的狀態,減少開發者的工作量,但是需要占用大量的服務器內存資源。因此,在不需要服務器控件狀態視圖的情況下,應將其EnableViewState屬性設置為false,如常用的<asp:Lable>和<asp:Button>控件。

  2.3 Page.IsPostBack的運用

  Page.IsPostBack用于記錄頁面是否從客戶端返回,若為false表示初次運行,否則表示從客戶端再次返回該頁面。Page.IsPostBack的合理應用可以避免頁面在往返過程中的一些不必要的操作。在Page_Load函數及一些只需要初始化一次的事件函數中均可以使用該屬性來提高應用程序性能。

  void Page_Load(Object o, EventArgs e)
  {
  if(! Page.IsPostBack)
  {
  conn=new SqlConnection("server=localhost;uid=sa;pwd=;database=data");
  String sql="select * from student";
  cmd.Fill(ds,"stu");
  mydataGrid.DataBind();
  }
  }

  以上代碼將保證只有在首次訪問該頁面時對數據庫進行讀取并綁定。

  2.4 合理使用DataGrid控件

  DataGrid控件帶有最強大的數據顯示功能,還內置了對數據的修改、刪除、添加、分頁等很多功能。如果只需簡單的顯示數據, DataGrid并非最佳選擇。DataGrid控件的分頁功能,數據的存儲方式(存儲在viewstate中)等,雖然讓程序開發者使用方便快捷,但由此產生的性能開銷不容小視。

  DataList控件比DataGrid功能少了很多。但自定義性強了很多。特有的多行數據顯示還是比較方便的。DataGrid能實現的功能,它基本能實現。

  Repeater控件功能最少,但自定義性非常強。由于減少了很多功能,對服務器的性能帶來消耗最小。

  因此,在只需簡單顯示數據列表時,選擇Repeater或DataList控件同樣可以達到目的,而且減輕了性能上的開銷。

  數據庫訪問性能優化

  1、數據庫的連接和關閉

  訪問數據庫資源需要創建連接、打開連接和關閉連接幾個操作。這些過程需要多次與數據庫交換信息以通過身份驗證,比較耗費服務器資源。ASP.NET中提供了連接池(Connection Pool)改善打開和關閉數據庫對性能的影響。系統將用戶的數據庫連接放在連接池中,需要時取出,關閉時收回連接,等待下一次的連接請求。

  連接池的大小是有限的,如果在連接池達到最大限度后仍要求創建連接,必然大大影響性能。因此,在建立數據庫連接后只有在真正需要操作時才打開連接,使用完畢后馬上關閉,從而盡量減少數據庫連接打開的時間,避免出現超出連接限制的情況。

  2、使用存儲過程

  存儲過程是存儲在服務器上的一組預編譯的SQL語句,類似于DOS系統中的批處理文件。存儲過程具有對數據庫立即訪問的功能,信息處理極為迅速。使用存儲過程可以避免對命令的多次編譯,在執行一次后其執行規劃就駐留在高速緩存中,以后需要時只需直接調用緩存中的二進制代碼即可。

  另外,存儲過程在服務器端運行,獨立于ASP.NET程序,便于修改,最重要的是它可以減少數據庫操作語句在網絡中的傳輸。

  3、優化查詢語句

  ASP.NET中ADO連接消耗的資源相當大,SQL語句運行的時間越長,占用系統資源的時間也越長。因此,盡量使用優化過的SQL語句以減少執行時間。比如,不在查詢語句中包含子查詢語句,充分利用索引等。

  字符串操作性能優化

  1、使用值類型的ToString方法

  在連接字符串時,經常使用"+"號直接將數字添加到字符串中。這種方法雖然簡單,也可以得到正確結果,但是由于涉及到不同的數據類型,數字需要通過裝箱操作轉化為引用類型才可以添加到字符串中。但是裝箱操作對性能影響較大,因為在進行這類處理時,將在托管堆中分配一個新的對象,原有的值復制到新創建的對象中。

  使用值類型的ToString方法可以避免裝箱操作,從而提高應用程序性能。

  2、運用StringBuilder類

  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); //顯示操作結果

  ASP.NET應用程序性能測試

  在對ASP.NET應用程序進行性能測試之前,應確保應用程序沒有錯誤,而且功能正確。具體的性能測試可以采用以下工具進行:
  Web Application Strees Tool (WAS)是Microsoft發布的一個免費測試工具,可以從http://webtool.rte.microsoft.com/上下載。它可以模擬成百上千個用戶同時對web應用程序進行訪問請求,在服務器上形成流量負載,從而達到測試的目的,可以生成平均TTFB、平均TTLB等性能匯總報告。

  Application Center Test (ACT) 是一個測試工具,附帶于Visual Studio.NET的企業版中,是Microsoft正式支持的web應用程序測試工具。它能夠直觀地生成圖表結果,功能比WAS多,但不具備多個客戶機同時測試的能力。

  服務器操作系統"管理工具"中的"性能"計數器,可以對服務器進行監測以了解應用程序性能。

  結論

  對于網站開發人員來說,在編寫ASP.NET應用程序時注意性能問題,養成良好的習慣,提高應用程序性能,至少可以推遲必需的硬件升級,降低網站的成本。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
老司机精品视频线观看86| 国产一区二区三区四区老人| 在线播放国产精品二区一二区四区 | 日韩福利电影在线观看| 欧美系列亚洲系列| 91在线视频免费观看| 一区二区三区精品视频在线| 久久综合久久久| 亚洲欧洲综合另类| 欧美日韩免费一区二区三区视频 | 91精品蜜臀在线一区尤物| 久久综合狠狠综合久久激情| 欧美日韩亚洲三区| 亚洲国产成人av网| 欧美xxxx老人做受| 在线免费观看日本欧美| heyzo一本久久综合| 日韩高清一级片| 中文字幕不卡一区| 精品久久久久av影院 | 亚洲美女色禁图| www.成人在线| 久久国产尿小便嘘嘘尿| 日韩伦理av电影| 国产欧美精品一区| 欧美绝品在线观看成人午夜影视| 伊人激情综合| 97久久人人超碰| 国产成人aaaa| 精品一区二区成人精品| 五月天亚洲婷婷| 亚洲一区自拍偷拍| 亚洲第一av色| 免费人成在线不卡| 不卡av在线网| 不卡视频免费播放| 不卡视频在线观看| 91农村精品一区二区在线| 国产99精品国产| 成人激情开心网| 懂色av一区二区在线播放| jlzzjlzz国产精品久久| 91同城在线观看| 1024成人| 久久亚洲二区三区| 国产成人在线观看| 91久久免费观看| 中文字幕中文字幕一区二区| 国产麻豆成人精品| 久久精品观看| 亚洲第一主播视频| 欧美特黄一区| 国产精品私人自拍| 97se亚洲国产综合自在线| 欧美一区二区久久| 国产精品自在欧美一区| 欧美吻胸吃奶大尺度电影| 香蕉av福利精品导航| 91久久综合| 成人精品高清在线| 99一区二区| 精品国产免费人成电影在线观看四季 | 国产精品你懂的在线欣赏| 日韩av中文字幕一区二区三区 | 久久久精品网| 国产精品久久久久久久岛一牛影视 | 精品国产91洋老外米糕| 亚洲一区二区三区四区的 | 高清不卡在线观看| 欧美性生活大片视频| 午夜av电影一区| 国产精品亚洲综合| 亚洲成a人v欧美综合天堂下载| 国内精品久久久久久久影视麻豆 | 亚洲欧美自拍偷拍色图| 欧美1区2区| 国产精品久久久久久久久快鸭 | 国产成人aaa| 欧美电影一区二区| 成人午夜碰碰视频| 精品日本一线二线三线不卡| www.在线成人| 91黄视频在线| 精品国产免费久久| 亚洲精选视频在线| 99久久精品国产毛片| 欧美一区2区三区4区公司二百| 日韩免费电影一区| 亚洲黄色尤物视频| 日韩视频在线播放 | 国产不卡在线一区| 粉嫩av一区二区三区在线播放| 91麻豆国产在线观看| 欧美日韩精品二区第二页| 日韩激情一二三区| 久久久久久网| 亚洲精品一区二区在线观看| 国产成人av电影免费在线观看| 在线不卡中文字幕播放| caoporm超碰国产精品| 久久久久久99久久久精品网站| 欧美激情综合色综合啪啪| 亚洲欧美日韩一区| 色婷婷综合久久久中文一区二区| 国产精品看片你懂得| 久久一区国产| 国产福利一区二区三区在线视频| 精品成人佐山爱一区二区| 国一区二区在线观看| 午夜不卡av免费| 久久亚洲私人国产精品va媚药| 亚洲图片欧洲图片日韩av| 免费不卡在线视频| 中文字幕中文乱码欧美一区二区 | 色综合久久66| 国内久久精品| 韩国av一区二区三区在线观看| 国产精品丝袜91| 欧美日韩精品一二三区| 亚洲专区一区| 欧美午夜久久| 91在线视频在线| 国产精品911| 日本欧美一区二区三区乱码| 亚洲国产经典视频| 久久久精品一品道一区| 777色狠狠一区二区三区| 日本福利一区二区| 国产精品一区二区三区四区五区| 国产一区二区在线观看免费播放| 国产一区激情在线| 国产成人午夜精品影院观看视频 | 欧美先锋影音| 黄色国产精品| 国内揄拍国内精品久久| 韩国免费一区| 99国内精品| 色综合久久久久| 日本韩国精品一区二区在线观看| 久久国产精品久久w女人spa| 性伦欧美刺激片在线观看| 色诱视频网站一区| 91精品欧美综合在线观看最新| 91麻豆精品国产无毒不卡在线观看| 欧美三级中文字幕在线观看| 欧美日韩成人一区二区| 日韩一区二区三区免费观看| 日韩久久免费av| 亚洲免费毛片网站| 久久99国产精品久久99果冻传媒| 国产乱码字幕精品高清av| 99久久er热在这里只有精品66| 欧美日韩亚洲一区二区三区在线| 在线看片日韩| 欧美肥妇free| 久久久久国产精品麻豆| 午夜伊人狠狠久久| 国产激情视频一区二区在线观看 | 今天的高清视频免费播放成人| 国产亚洲一级| 精品国产一区二区三区四区四| 中文字幕不卡在线| 国模娜娜一区二区三区| 在线高清一区| 欧美一区二区三区视频在线| 中文字幕精品在线不卡| 久久精品国产精品亚洲红杏| 国产精品99一区二区| 日韩一级二级三级精品视频| 亚洲一区中文日韩| 欧美视频网站| 久久噜噜亚洲综合| 国产一区二区三区免费| 91黄色在线观看| 亚洲欧美在线另类| 亚洲第一主播视频| 亚洲欧洲一区| 国产精品久久久久天堂| 成人99免费视频| 欧美一级黄色录像| 国产美女av一区二区三区| 色拍拍在线精品视频8848| 亚洲日本电影在线| 一本色道久久综合| 一区精品在线播放| 亚洲午夜在线观看| 中文字幕在线不卡国产视频| 91色九色蝌蚪| 国产精品久久久久影视| 欧美日韩综合久久| 亚洲少妇30p| 国产九九精品| 欧美a级一区二区| 欧美日韩精品二区第二页| 精品一区二区免费视频| 日韩精品在线网站| 黄色国产精品| 亚洲国产精品一区二区www在线| 久久国产精品亚洲77777| 日本 国产 欧美色综合|