五月天亚洲色图_亚洲精品少妇_亚洲熟妇无码av另类本色_自拍高清综合中文_成年女人wwxx免费_国产高清视频在线观看三区_下载香蕉视频app_芒果视频下载_日韩AV综合无码中文一区_国产日产精品久久

在線幫助 ICP備案 合作機(jī)構(gòu) 我要訂制
 
 7×24客服熱線:13663712063
您的位置:首頁  技術(shù)支持 ASP.NET中常用的26個(gè)優(yōu)化性能方法
       越辰家政管理軟件
       越辰空調(diào)售后管理軟件
       越辰圖書銷售管理軟件
       越辰物業(yè)管理軟件
       越辰茶樓管理軟件
       越辰幼兒園管理軟件
       越辰餐飲管理軟件
       越辰病歷管理系統(tǒng)
       越辰洗浴管理軟件
       越辰住院管理系統(tǒng)
       越辰超市管理系統(tǒng)
  

ASP.NET中常用的26個(gè)優(yōu)化性能方法

來源:yocin  時(shí)間:2010-12-18 14:52:09  欄目:技術(shù)支持  點(diǎn)擊率:4726

  避免到服務(wù)器的不必要的往返過程

  雖然您很可能希望盡量多地使用 Web 窗體頁框架的那些節(jié)省時(shí)間和代碼的功能,但在某些情況下卻不宜使用 ASP.NET 服務(wù)器控件和回發(fā)事件處理。通常,只有在檢索或存儲(chǔ)數(shù)據(jù)時(shí),您才需要啟動(dòng)到服務(wù)器的往返過程。多數(shù)數(shù)據(jù)操作可在這些往返過程間的客戶端上進(jìn)行。例如,從 HTML 窗體驗(yàn)證用戶輸入經(jīng)常可在數(shù)據(jù)提交到服務(wù)器之前在客戶端進(jìn)行。通常,如果不需要將信息傳遞到服務(wù)器以將其存儲(chǔ)在數(shù)據(jù)庫中,那么您不應(yīng)該編寫導(dǎo)致往返過程的代碼。如果您開發(fā)自定義服務(wù)器控件,請(qǐng)考慮讓它們?yōu)橹С?ECMAScript. 的瀏覽器呈現(xiàn)客戶端代碼。通過以這種方式使用服務(wù)器控件,您可以顯著地減少信息被不必要的發(fā)送到 Web 服務(wù)器的次數(shù)。

  使用 Page.IsPostBack 避免對(duì)往返過程執(zhí)行不必要的處理

  如果您編寫處理服務(wù)器控件回發(fā)處理的代碼,有時(shí)可能需要在首次請(qǐng)求頁時(shí)執(zhí)行其他代碼,而不是當(dāng)用戶發(fā)送包含在該頁中的 HTML 窗體時(shí)執(zhí)行的代碼。根據(jù)該頁是否是響應(yīng)服務(wù)器控件事件生成的。

  使用 Page.IsPostBack 屬性有條件地執(zhí)行代碼

  例如,下面的代碼演示如何創(chuàng)建數(shù)據(jù)庫連接和命令,該命令在首次請(qǐng)求該頁時(shí)將數(shù)據(jù)綁定到 DataGrid 服務(wù)器控件。

以下是代碼片段:
void Page_Load(Object sender, EventArgs e)   {   // Set up a connection and command here.   if (!Page.IsPostBack)   {   String query = "select * from Authors where FirstName like '%JUSTIN%'";   myCommand.Fill(ds, "Authors");   myDataGrid.DataBind();   }   }

  由于每次請(qǐng)求時(shí)都執(zhí)行 Page_Load 事件,上述代碼檢查 IsPostBack 屬性是否設(shè)置為 false。如果是,則執(zhí)行代碼。如果該屬性設(shè)置為 true,則不執(zhí)行代碼。注意 如果不運(yùn)行這種檢查,回發(fā)頁的行為將不更改。Page_Load 事件的代碼在執(zhí)行服務(wù)器控件事件之前執(zhí)行,但只有服務(wù)器控件事件的結(jié)果才可能在輸出頁上呈現(xiàn)。如果不運(yùn)行該檢查,仍將為 Page_Load 事件和該頁上的任何服務(wù)器控件事件執(zhí)行處理。

  當(dāng)不使用會(huì)話狀態(tài)時(shí)禁用它

  并不是所有的應(yīng)用程序或頁都需要針對(duì)于具體用戶的會(huì)話狀態(tài),您應(yīng)該對(duì)任何不需要會(huì)話狀態(tài)的應(yīng)用程序或頁禁用會(huì)話狀態(tài)。   若要禁用頁的會(huì)話狀態(tài),請(qǐng)將 @ Page 指令中的 EnableSessionState 屬性設(shè)置為 false。

  注意:如果頁需要訪問會(huì)話變量,但不打算創(chuàng)建或修改它們,則將@ Page 指令中的 EnableSessionState 屬性設(shè)置為ReadOnly。還可以禁用 XML Web services 方法的會(huì)話狀態(tài)。有關(guān)更多信息,請(qǐng)參見使用 ASP.NET 和 XML Web services 客戶端創(chuàng)建的 XML Web services。若要禁用應(yīng)用程序的會(huì)話狀態(tài),請(qǐng)?jiān)趹?yīng)用程序 Web.config 文件的 sessionstate 配置節(jié)中將 mode 屬性設(shè)置為 off。

  仔細(xì)選擇會(huì)話狀態(tài)提供程序

  ASP.NET 為存儲(chǔ)應(yīng)用程序的會(huì)話數(shù)據(jù)提供了三種不同的方法:進(jìn)程內(nèi)會(huì)話狀態(tài)、作為 Windows 服務(wù)的進(jìn)程外會(huì)話狀態(tài)和 SQL Server 數(shù)據(jù)庫中的進(jìn)程外會(huì)話狀態(tài)。每種方法都有自己的優(yōu)點(diǎn),但進(jìn)程內(nèi)會(huì)話狀態(tài)是迄今為止速度最快的解決方案。如果只在會(huì)話狀態(tài)中存儲(chǔ)少量易失數(shù)據(jù),則建議您使用進(jìn)程內(nèi)提供程序。進(jìn)程外解決方案主要用于跨多個(gè)處理器或多個(gè)計(jì)算機(jī)縮放應(yīng)用程序,或者用于服務(wù)器或進(jìn)程重新啟動(dòng)時(shí)不能丟失數(shù)據(jù)的情況。有關(guān)更多信息,請(qǐng)參見 ASP.NET 狀態(tài)管理。

  不使用不必要的Server Control

  ASP.net中,大量的服務(wù)器端控件方便了程序開發(fā),但也可能帶來性能的損失,因?yàn)橛脩裘坎僮饕淮畏⻊?wù)器端控件,就產(chǎn)生一次與服務(wù)器端的往返過程。因此,非必要,應(yīng)當(dāng)少使用Server Control。

  ASP.NET應(yīng)用程序性能測試

  在對(duì)ASP.NET應(yīng)用程序進(jìn)行性能測試之前,應(yīng)確保應(yīng)用程序沒有錯(cuò)誤,而且功能正確。具體的性能測試可以采用以下工具進(jìn)行:Web Application Strees Tool (WAS)是Microsoft發(fā)布的一個(gè)免費(fèi)測試工具,可以從http://webtool.rte.microsoft.com/上下載。它可以模擬成百上千個(gè)用戶同時(shí)對(duì)web應(yīng)用程序進(jìn)行訪問請(qǐng)求,在服務(wù)器上形成流量負(fù)載,從而達(dá)到測試的目的,可以生成平均TTFB、平均TTLB等性能匯總報(bào)告。Application Center Test (ACT) 是一個(gè)測試工具,附帶于Visual Studio.NET的企業(yè)版中,是Microsoft正式支持的web應(yīng)用程序測試工具。它能夠直觀地生成圖表結(jié)果,功能比WAS多,但不具備多個(gè)客戶機(jī)同時(shí)測試的能力。服務(wù)器操作系統(tǒng)"管理工具"中的"性能"計(jì)數(shù)器,可以對(duì)服務(wù)器進(jìn)行監(jiān)測以了解應(yīng)用程序性能。

  結(jié)論:

  對(duì)于網(wǎng)站開發(fā)人員來說,在編寫ASP.NET應(yīng)用程序時(shí)注意性能問題,養(yǎng)成良好的習(xí)慣,提高應(yīng)用程序性能,至少可以推遲必需的硬件升級(jí),降低網(wǎng)站的成本。


  【 1 】  【 2 】  【 3 】  【 4 】  【 5 】 
Copyright ◎2008-2018鄭州越辰科技有限公司 版權(quán)所有 網(wǎng)站地圖
地址:中國·河南鄭州市文化路交北環(huán)路北晨e時(shí)代B座505室 
電話:0371-63399049 13663712063 備案號(hào):豫ICP備19031456號(hào)
我們專注于 軟件開發(fā)| 網(wǎng)站制作  返回歡迎頁 
  
點(diǎn)擊這里給我發(fā)消息 越辰業(yè)務(wù)
點(diǎn)擊這里給我發(fā)消息 越辰業(yè)務(wù)
點(diǎn)擊這里給我發(fā)消息 越辰代理
點(diǎn)擊這里給我發(fā)消息 越辰技術(shù)
 ,頁面執(zhí)行時(shí)間:15.625毫秒        
up close

返回頂部

越辰科技微信
微信掃一掃