六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

Asp.NET中常用的一些優化性能的方法

[摘要]ASP.NET 的緩存機制相比ASP有很大的改進,本文檔除對常用優化方法進行總結介紹外,強調了如何使用ASP.NET的緩存來獲得最佳性能。1:不要使用不必要的session和ASP中一樣,在不必要的...
ASP.NET 的緩存機制相比ASP有很大的改進,本文檔除對常用優化方法進行總結介紹外,強調了如何使用ASP.NET的緩存來獲得最佳性能。

1:不要使用不必要的session
和ASP中一樣,在不必要的時候不要使用Session。

可以針對整個應用程序或者頁面禁用會話狀態:

l         禁用頁面的會話狀態


l         禁用應用程序的會話狀態

在應用程序的Web.Config文件的sessionstate配置節中,將mode屬性設置為off。

即:。



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



3:不使用不必要的ViewState
默認情況下,ASP.Net對所有的Server Control都啟用了ViewState(視圖狀態)。但ViewState需要在客戶端保存一些信息,這會造成性能的消耗。當必須使用Server Control時,可以考慮禁止ViewState。

有兩種方式禁止ViewState:針對整個頁面或者單個控件禁用ViewState。

l         針對控件


l         針對頁面


4:不要用Exception控制程序流程
有些程序員可能會使用異常來實現一些流程控制。例如:



try{

   result=100/num;

}

Catch(Exception e)

{

   result=0;

}

但實際上,Exception是非常消耗系統性能的。除非必要,不應當使用異常控制來實現程序流程。

上面的代碼應當寫為:



if(num!=0)

   result=100/num;

else

   result=0;

5:禁用VB和Jscript動態數據類型
應當始終顯示地申明變量數據類型,這能夠節約程序的執行時間。為此,可以在頁面前面寫明:

6:使用存儲過程完成數據訪問
7:只讀數據訪問不要使用DataSet。
DataSet作為一個功能強大的、支持離線的數據庫,其對性能的開銷也相對較大。在特定的場合可以使用.Net中的其它數據集作為替代。

n         使用SqlDataReader代替DataSet;

n         SqlDataReader是read-only,forward-only。

8:關閉ASP.NET的Debug模式
為了方便開發調試,VS.net中對于Debug模式默認是開啟的,在部署應用程序時,應該關閉Debug模式,這將有效提高應用程序性能。

9:使用ASP.Net Output Cache緩沖數據;
提供緩沖功能是ASP.net中非常強大的一種功能。曾看到過某些評測說:ASP.net程序的性能比SUN的JSP應用程序性能快上幾倍,實際上,該評測程序非常重要的一點就是使用了很多ASP.net的緩沖功能。

ASP.net中常用的緩沖方式有:

n         頁面緩沖

一個例子:查詢北京市的天氣。因為天氣數據在一定的時間內是相對規定的。

當Web程序中第一次查詢北京市的天氣時,應用程序可能是調用一個遠程的WebService獲取天氣信息。而其后的用戶就可以從緩沖中得到當前的天氣信息。這將大大提高性能,減少服務器的壓力。

方式:

u       :指明頁面使用緩沖

u       Duration:控制緩沖有效的時間,單位為分鐘。

u       VaryByParam:用于指明是否緩沖的判斷依據。例如,如果第一個用戶查詢的是北京的天氣,則緩沖中存儲了北京市的天氣。當第二個用戶查詢上海的天氣時,為避免讀取到錯誤的緩沖,可以用這樣的代碼緩沖多個城市的天氣:


這就指明了根據頁面URL中的cityName參數來緩沖多份數據。

n         片斷緩沖

在ASP.net中,除了在頁面范圍內使用緩沖,也還可以針對User Control使用Output Cache參數實現對用戶控件的緩沖。同樣的,一個頁面中相同類型的控件也可以有多個不同的緩沖。可以根據參數來實現不同的緩沖。

例如:對于控件可以根據Control 的C屬性的不同實現不同的緩沖。



n         數據緩沖



n         緩沖的過期依賴條件

某種意義上,Cache和Application是一樣的,都是一種公有的對象。為了取得緩沖與數據有效性之間的平衡,可以根據需要對緩沖過期策略進行合理的設置。

u       文件依賴

Cache.Insert (“Mydata”, Source

                           , New CacheDependency(Server.MapPath(“authors.xml”)))

此代碼的含義是當authors.xml文件不發生變化的時候,緩沖MyData始終有效。



u       時間依賴

設定1小時后過期,這是一種絕對過期。

Cache.Insert(“Mydata”,Source,null

                          ,DateTime.Now.AddHours(1),TimeSpan.Zero);



u       相對過期依賴

當DataSet不再發生變化20分鐘以后,緩沖過期。

Cache.Insert(“MyData”,Source,null

                        ,DateTime.MaxValue,TimeSpan.FromMinutes(20));


主站蜘蛛池模板: 亚洲精品自拍视频 | 亚洲高清免费 | 日韩成人免费aa在线看 | 香蕉久久夜色精品国产尤物 | 欧美视频在线免费 | 欧美一区二区三区不卡免费 | 四虎影城库 | 青青草原在线播放 | 日本最新免费不卡二区在线 | 色婷婷久久综合中文久久一本 | 欧美一区二区三区四区在线观看 | 欧美一级特黄刺激大片视频 | 午夜在线日韩免费精品福利 | 亚洲美女色在线欧洲美女 | 杨幂国产精品福利在线观看 | 青娱乐在线视频播放 | 亚洲国产成人久久综合区 | 天堂tv | 四虎成人影院网址 | 四虎永久在线精品国产 | 亚洲欧美一区二区三区不卡 | 日本精品国产 | 日韩一级片在线播放 | 欧美性生活一级 | 桃花岛高清在线观看 | 日韩日b| 日韩毛片在线免费观看 | 人人揉人人人人澡人人 | 日韩第四页 | 一二三四日本高清观看视频 | 日韩欧美一及在线播放 | 青青爽国产手机在线观看免费 | 香蕉视频色 | 一级做性色a爰片久久毛片 一级做受视频免费是看美女 | 日韩在线视频二区 | 天天摸日日添狠狠添婷婷 | 亚洲 国产精品 日韩 | 日本porno动漫 | 欲色影视天天一区二区三区色香欲 | 午夜伦理视频 | 五福影院凹凸一区二区 |