自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解決ADO.Net Team相關(guān)說明介紹

開發(fā) 后端
進(jìn)行學(xué)習(xí)ADO.Net Team所以需要reset一次當(dāng)前地連接。當(dāng)然由于所有地額外檢查都會增大ADO.net Connection Pool 對系統(tǒng)地開銷。

本章對于ADO.Net Team推出內(nèi)容,數(shù)據(jù)庫讀取技術(shù)也由原本地ADO進(jìn)化為ADO.Net。正如所有人所知道地,ADO.Net較ADO提供了更便捷地數(shù)據(jù)庫讀寫能力以及優(yōu)秀地性能,希望本文能教會你更多東西。

Connection Pool是ADO.Net一個用來提高性能地重要功能。當(dāng)然對于Connection Pool地機(jī)制卻很少有文檔涉及,所以對于Connection Pool地排錯,一直均為一個很棘手地問題對于OLEDB以及ODBC, 連接池是由Driver決定地。對于Oracle地數(shù)據(jù)庫,一般而言,8.0以上地版本都建議運(yùn)用Oracle提供地ODP.Net。所以此文重點探討一下System.Data,SqlClient地Connection Pool。

每當(dāng)程序需要讀寫數(shù)據(jù)庫地時候。Connection.Open()會運(yùn)用ConnectionString連接到數(shù)據(jù)庫,數(shù)據(jù)庫會為程序建立一個連接,ADO.Net Team并且維護(hù)打開狀態(tài),此后程序就可以運(yùn)用T-SQL語句來查詢/更新數(shù)據(jù)庫。當(dāng)執(zhí)行到Connection.Close()后,數(shù)據(jù)庫就會關(guān)閉當(dāng)前地連接。很好,一切看上去均為如此有條不紊。

當(dāng)然如果我地程序需要不定時地打開和關(guān)閉連接,(比如說 ASP.NET 或是 Web Service ),例如當(dāng)ADO.Net Team發(fā)送到服務(wù)器地時候、,我們需要打開Connection 然后運(yùn)用Select* from Table 返回一個DataTable/DataSet給客戶端/瀏覽器,然后關(guān)閉當(dāng)前地Connection。那每次都Open/Close Connection 如此地頻繁操作對于整個系統(tǒng)擇定確定就成了一種浪費(fèi)。#t#

ADO.Net Team就給出了一個比較好地解決方法。將先前地Connection保存起來,當(dāng)下一次需要打開連接地時候就將先前地Connection 交給下一個連接。這就是Connection Pool。首先當(dāng)一個程序執(zhí)行Connection.open()時候,ADO.net就需要判斷,此連接是否支持Connection Pool (Pooling 默認(rèn)為True),如果指定為False, ADO.Net Team就與數(shù)據(jù)庫之間創(chuàng)建一個連接(為了避免混淆,所有數(shù)據(jù)庫中地連接,都運(yùn)用”連接”描述)。

然后返回給程序。如果指定為True,ADO.net就會根據(jù)ConnectString創(chuàng)建一個Connection Pool,然后向Connection Pool中填充ADO.Net Team(所有.net程序中地連接,都運(yùn)用”Connection”描述)。填充多少個Connection由Min Pool Size (默認(rèn)為0)屬性來決定。例如如果指定為5,則ADO.net會一次與SQL數(shù)據(jù)庫之間打開5個連接,然后將4個Connection,保存在Connection Pool中,1個Connection返回給程序。

當(dāng)程序執(zhí)行到Connection.close() 地時候。如果Pooling 為True,ADO.net 就把當(dāng)前地Connection放到Connection Pool并且維護(hù)與數(shù)據(jù)庫之間地連接。相應(yīng)情況下還會判斷Connection Lifetime(默認(rèn)為0)屬性,0代表無限大,如果Connection存在地時間超過了Connection LifeTime,ADO.Net Team就會關(guān)閉地Connection相應(yīng)情況下斷開與數(shù)據(jù)庫地連接,而不是重新保存到Connection Pool中。(這個設(shè)置重點用于群集地SQL 數(shù)據(jù)庫中,達(dá)到負(fù)載平衡地目地)。如果Pooling指定為False,則直接斷開與數(shù)據(jù)庫之間地連接。

責(zé)任編輯:chenqingxiang 來源: chinaunix
相關(guān)推薦

2009-12-24 09:26:01

ADO.Net Tea

2009-12-23 09:26:56

ADO.NET屬性

2009-12-24 13:38:07

ADO.NET技術(shù)

2009-12-23 14:07:09

ADO.NET實例對象

2009-12-21 15:52:30

ADO.NET對象

2009-12-22 15:44:47

ADO.NET菜單

2009-12-21 10:37:05

Ado.Net 實例

2009-12-24 09:14:52

ADO.Net Tea

2009-12-30 16:05:20

ADO.NET實例

2009-12-22 11:17:58

ADO.NET產(chǎn)品

2009-12-21 15:58:19

ADO.NET集合

2009-12-29 14:36:55

ADO.NET 數(shù)據(jù)集

2009-12-22 15:20:25

ADO.NET功能

2009-12-23 15:13:15

Ado.Net Syb

2009-12-24 15:42:01

ADO類庫

2009-12-25 09:25:54

ADO.NET實例

2009-12-21 14:39:09

ADO.NET技巧

2009-12-21 11:29:13

Ado.Net代碼

2010-01-04 13:16:31

ADO.NET命令

2009-12-30 10:32:04

擴(kuò)展ADO.NET
點贊
收藏

51CTO技術(shù)棧公眾號