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

ADO.NET計(jì)數(shù)器bug之使用性能計(jì)數(shù)器觀察連接池總結(jié)

開(kāi)發(fā) 后端
這里為你介紹兩個(gè)ADO.NET計(jì)數(shù)器bug,只要是使用性能計(jì)數(shù)器觀察連接池時(shí)的bug體現(xiàn),希望看過(guò)本篇大家也去看一看。

運(yùn)用ADO.NET很長(zhǎng)時(shí)間了, 偶然間發(fā)現(xiàn)了ADO.NET1.1下使用性能計(jì)數(shù)器觀察連接池有關(guān)計(jì)數(shù)器的兩個(gè)bug,下面就和大家說(shuō)說(shuō)。

簡(jiǎn)單說(shuō)說(shuō)ADO.NET計(jì)數(shù)器bug

ADO.NET計(jì)數(shù)器bug一.

當(dāng)應(yīng)用程序進(jìn)程關(guān)閉后,計(jì)數(shù)器“SqlClient: Current # pooled connections”和“SqlClient: Current # connection pools”不會(huì)減為0,所以每重新運(yùn)行一次應(yīng)用程序性能計(jì)數(shù)器的值在上次的值的基礎(chǔ)上一直累加。這是計(jì)數(shù)器的錯(cuò)誤顯示,實(shí)際上當(dāng)應(yīng)用程序關(guān)閉后connection pool和pooled connection就減為0。因?yàn)殛P(guān)閉應(yīng)用程序后把性能監(jiān)視器也關(guān)閉,重啟應(yīng)用程序后再重新打開(kāi)性能監(jiān)視器就可以看出“SqlClient: Current # pooled connections”和“SqlClient: Current # connection pools”是重新從0開(kāi)始上升的。

ADO.NET計(jì)數(shù)器bug二.

用斷點(diǎn)調(diào)試的情況下,連接串為"server = .;database = northwind;pooling = true;trusted_connection = true" 的connnection第一次Open的時(shí)候“SqlClient: Current # pooled connections”就從0變?yōu)?。但根據(jù)連接串參數(shù)的意義,只Open了一個(gè)connection,“SqlClient: Current # pooled connections”應(yīng)該從0變?yōu)?(圖2是在沒(méi)有斷點(diǎn)調(diào)試的情況下得出的曲線)。這不是計(jì)數(shù)器顯示錯(cuò)誤,而是ADO.ENT 1.1本身的bug,因?yàn)椤癠ser Connections”也隨著“SqlClient: Current # pooled connections”從0變?yōu)?。

為什么需要連接池?

完成建立/關(guān)閉一個(gè)連接的完整過(guò)程是一個(gè)消耗大量資源和時(shí)間的一個(gè)過(guò)程。想象一下一個(gè)ASP.NET的系統(tǒng),里面包含大量訪問(wèn)數(shù)據(jù)庫(kù)的代碼片,系統(tǒng)有大量的用戶同時(shí)在使用系統(tǒng),如果程序每次Open/Close一個(gè)連接Data Provider都完成建立/關(guān)閉一個(gè)連接的完整過(guò)程,這樣的系統(tǒng)性能肯定讓人無(wú)法接受。

Data Provider提供連接池并通過(guò)連接池實(shí)現(xiàn)“物理連接”重復(fù)使用而避免頻繁地建立和關(guān)閉“物理連接”,從而大大提高應(yīng)用系統(tǒng)的性能。圖1描述一個(gè)應(yīng)用的不同Client App使用連接池訪問(wèn)數(shù)據(jù)庫(kù),Data Provider負(fù)責(zé)建立和管理一個(gè)或者多個(gè)的連接池,每一個(gè)連接池里有一個(gè)或者多個(gè)連接,池里的連接就是“邏輯連接”。連接池里有N個(gè)連接表示該連接池與數(shù)據(jù)庫(kù)之間有N個(gè)“物理連接”。增加一個(gè)連接,連接池與數(shù)據(jù)庫(kù)的“物理連接”就增加一個(gè),減少一個(gè)連接,連接池與數(shù)據(jù)庫(kù)的“物理連接”就減少一個(gè)。

物理連接

【編輯推薦】

  1. 詳談Linq查詢結(jié)果分析的方法
  2. 簡(jiǎn)簡(jiǎn)單單學(xué)習(xí)Linq查詢語(yǔ)法
  3. 詳細(xì)闡述Linq插入數(shù)據(jù)的操作方法
  4. 淺析Linq插入數(shù)據(jù)的實(shí)現(xiàn)方法
  5. 簡(jiǎn)單解決Linq多條件組合問(wèn)題
責(zé)任編輯:田樹(shù) 來(lái)源: 博客
相關(guān)推薦

2010-01-04 16:02:32

ADO.NET計(jì)數(shù)器

2009-11-12 09:16:15

ADO.NET數(shù)據(jù)庫(kù)連

2009-11-06 16:59:26

WCF性能計(jì)數(shù)器

2010-02-22 16:34:17

WCF性能計(jì)數(shù)器

2023-08-08 08:01:22

微服務(wù)架構(gòu)服務(wù)

2009-11-12 09:25:21

ADO.NET連接池

2009-12-22 13:25:58

WCF性能計(jì)數(shù)器內(nèi)存

2009-12-22 13:16:53

WCF性能計(jì)數(shù)器

2009-11-03 15:58:22

2009-12-23 14:53:28

ADO.NET連接池

2009-11-11 14:04:14

ADO.NET連接池

2023-07-28 08:15:27

PC程序計(jì)數(shù)器

2009-11-13 13:11:37

ADO.NET連接池

2009-12-23 09:01:15

ADO.NET連接池

2009-11-03 16:51:04

ADO.NET連接池觀

2009-12-23 09:14:52

ADO.NET連接池

2009-12-30 16:22:58

ADO.NET連接池

2010-01-18 11:03:17

VB.NET網(wǎng)頁(yè)計(jì)數(shù)器

2009-12-22 13:34:07

WCF性能計(jì)數(shù)器級(jí)別

2010-11-30 13:43:07

SQL備份
點(diǎn)贊
收藏

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