成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺談ASP.NET訪問數據

開發 后端
本文介紹ASP.NET訪問數據,以及介紹只要可能,就緩存數據和頁輸出和選擇適合頁面或應用程序的數據查看機制等。

只要可能,就緩存數據和頁輸出

ASP.NET 提供了一些簡單的機制,它們會在不需要為每個頁請求動態計算頁輸出或數據時緩存這些頁輸出或數據。另外,通過設計要進行緩存的頁和數據請求(特別是在站點中預期將有較大通訊量的區域),可以優化這些頁的性能。與 .NET Framework 的任何 Web 窗體功能相比,適當地使用緩存可以更好的提高站點的性能,有時這種提高是超數量級的。使用 ASP.NET 緩存機制有兩點需要注意。首先,不要緩存太多項。緩存每個項均有開銷,特別是在內存使用方面。不要緩存容易重新計算和很少使用的項。

其次,給緩存的項分配的有效期不要太短。很快到期的項會導致緩存中不必要的周轉,并且經常導致更多的代碼清除和垃圾回收工作。若關心此問題,請監視與 ASP.NET Applications 性能對象關聯的 Cache Total Turnover Rate 性能計數器。高周轉率可能說明存在問題,特別是當項在到期前被移除時。這也稱作內存壓力。

選擇適合頁面或應用程序的數據查看機制

根據您選擇在 Web 窗體頁顯示數據的方式,在便利和性能之間常常存在著重要的權衡。例如,DataGrid Web 服務器控件可能是一種顯示數據的方便快捷的方法,但就性能而言它的開銷常常是***的。在某些簡單的情況下,您通過生成適當的 HTML 自己呈現數據可能很有效,但是自定義和瀏覽器定向會很快抵銷所獲得的額外功效。Repeater Web 服務器控件是便利和性能的折衷。它高效、可自定義且可編程。

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

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

將SQL Server 存儲過程用于數據訪問

在 .NET Framework 提供的所有數據訪問方法中,基于 SQL Server 的數據訪問是生成高性能、可縮放 Web 應用程序的推薦選擇。使用托管 SQL Server 提供程序時,可通過使用編譯的存儲過程而不是特殊查詢獲得額外的性能提高。

避免單線程單元 (STA) COM 組件

默認情況下,ASP.NET 不允許任何 STA COM 組件在頁面內運行。若要運行它們,必須在 .aspx 文件內將 ASPCompat=true 屬性包含在 @ Page 指令中。這樣就將執行用的線程池切換到 STA 線程池,而且使 HttpContext 和其他內置對象可用于 COM 對象。前者也是一種性能優化,因為它避免了將多線程單元 (MTA) 封送到 STA 線程的任何調用。使用 STA COM 組件可能大大損害性能,應盡量避免。若必須使用 STA COM 組件,如在任何 interop 方案中,則應在執行期間進行大量調用并在每次調用期間發送盡可能多的信息。另外,小心不要在構造頁面期間創建任何 STA COM 組件。例如下面的代碼中,

在頁面構造時將實例化由某個線程創建的 MySTAComponent,而該線程并不是將運行頁面的 STA 線程。這可能對性能有不利影響,因為要構造頁面就必須完成 MTA 和 STA 線程之間的封送處理。

Dim myComp as new MySTAComponent() Public Sub Page_Load() myComp.Name = "Bob" End Sub

***機制是推遲對象的創建,直到以后在 STA 線程下執行上述代碼,如下面的例子所示。

Dim myComp Public Sub Page_Load() myComp = new MySTAComponent()myComp.Name = "Bob" End Sub

推薦的做法是在需要時或者在 Page_Load 方法中構造任何 COM 組件和外部資源。永遠不要將任何 STA COM 組件存儲在可以由構造它的線程以外的其他線程訪問的共享資源里。這類資源包括像緩存和會話狀態這樣的資源。即使 STA 線程調用 STA COM 組件,也只有構造此 STA COM 組件的線程能夠實際為該調用服務,而這要求封送處理對創建者線程的調用。以上是介紹ASP.NET訪問數據。

【編輯推薦】

  1. 介紹ASP.NET中SQL語句
  2. 在ASP.NET中使用StringBuilder
  3. ASP.NET中的Response.Write
  4. 淺析ASP.NET授權模塊
  5. ASP.NET運行時的處理流程
責任編輯:佚名 來源: 51CTO.com
相關推薦

2009-08-19 10:54:42

ASP.NET數據訪問

2009-07-22 17:21:27

ASP.NET 2.0

2009-07-20 15:30:11

ASP.NET應用

2009-07-22 16:11:43

ASP.NET AJA

2009-07-24 10:52:42

ASP.NET ISA

2009-07-21 14:16:02

ASP.NET管道優化

2011-08-23 10:58:59

2009-07-23 15:24:37

ASP.NET Ima

2009-07-27 16:19:59

ASP.NET報表控件

2009-07-28 17:49:30

ASP.NET定期回收

2009-07-22 13:24:24

ASP.NET MVC

2009-08-10 10:19:47

ASP.NET組件設計

2009-07-23 15:44:39

ASP.NET MVC

2009-08-05 15:29:33

ASP.NET For

2009-07-28 16:03:23

ASP.NET狀態服務

2009-08-03 18:47:12

ASP.NET數據緩存

2009-07-27 14:24:16

ASP.NET訪問權限

2009-07-21 15:02:19

ASP.NET應用程序

2009-07-27 13:01:28

TreeViewASP.NET

2011-06-08 11:36:16

ASP.NETrender
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: av一区二区三区四区 | 亚洲综合色丁香婷婷六月图片 | 在线免费观看亚洲 | 国产精品九九九 | 亚洲精品一区在线 | 午夜激情在线视频 | 久久6视频 | 国产一区二区三区 | 在线视频 亚洲 | www.久久| 毛片com| 国产婷婷综合 | 国产一区二区三区在线 | 精品视频一区二区三区在线观看 | 国产成人精品久久二区二区 | 在线成人免费视频 | 亚洲精品成人av久久 | 成人精品区 | 精产国产伦理一二三区 | 色资源在线视频 | 一二三四在线视频观看社区 | 亚洲成人一区二区三区 | 羞羞视频在线观免费观看 | 日韩在线播放一区 | 国产99视频精品免费播放照片 | 精品国产不卡一区二区三区 | 国产精品欧美一区二区三区 | 欧美一极视频 | 久久久久久九九九九九九 | 欧美成人免费在线视频 | 国产精品一二区 | 精品一区在线 | 欧美www在线观看 | 久久免费电影 | 久久伊 | 九一在线 | 最近最新中文字幕 | 中文日韩在线视频 | 国产一区二区精品在线观看 | av一级久久 | 久久精品成人 |