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

百寶箱教你使用ADO.NET FAQ連接池

開發 后端
這里就何時創建ADO.NET FAQ連接池、何時關閉連接池、當連接池中的連接都已經用完,而有新的連接請求到來時會發生什么等等介紹。

#T#ADO.NET有很多值得學習的地方,這里我們主要介紹ADO.NET FAQ連接池,包括介紹連接池的解決方法等方面。問題,一種CS架構的程序,直接把SQL Server作為服務端,每個客戶端直接連接數據庫操作,如果客戶端打開的數量過多時SQL Server的連接數將會特別高,數據庫端形成性能瓶頸,這種情況下怎么辦?想了想,造成這種情況的原因是ADO.NET的內部機制造成的。 ADO.NET中為了提高性能,所以使用了連接池,這樣每個請求就不必都創建一個連接,然后認證,然后執行SQL,而是從連接池中直接取出連接執行 SQL,執行完成后也并不是真正關閉連接,而是將該連接重新放回連接池中。如果有100個客戶端,每個客戶端在使用一段時間后連接池中保存了10個連接,那么在這種情況下,即使不在客戶端做任何操作,SQL Server上都有1000個連接,這樣不出性能問題才怪。

既然是連接池的問題,針對該問題的2個解決辦法:

1.關閉ADO.NET的連接池,每次執行SQL時都是新建一個連接執行,然后關閉。這樣做將使數據查詢有所減慢(每次都建立連接,每次都認證,當然會慢了),不過這個慢是毫秒級的,一般感覺不到的,但是如果一個操作就涉及到幾百個SQL語句的情況可能會明細感覺到減慢。修改方法特別簡單,都不用修改代碼,在數據庫鏈接字符串中加入Pooling=False;即可。

2.修改架構,這種CS架構除了性能問題外還會出現其他的比如安全上的問題。可以將直接連數據庫的方法改成連接服務,這其中可以使用Remoting、Web服務等,當然現在可以統一用WCF了。這樣做就只有服務程序去連接數據庫,而客戶端只連接服務程序,這樣就不會出現連接池造成的瓶頸。不過這樣做代碼修改量很大,若真要改還是很痛苦的。


ADO.NET FAQ連接池

1. 何時創建ADO.NET FAQ連接池?

當***個連接請求到來時創建連接池;連接池的建立由數據庫連接的連接字符創來決定。每一個連接池都與一個不同的連接字符串相關。當一個新的連接請求到來時如果連接字符串和連接池使用的字符串相同,就從連接池取出一個連接;如果不相同,就新建一個連接池。

2. 何時關閉連接池?

當連接池中的所有連接都已經關閉時關閉連接池。

3. 當連接池中的連接都已經用完,而有新的連接請求到來時會發生什么?

當連接池已經達到它的***連接數目時,有新的連接請求到來時,新的連接請求將放置到連接隊列中。當有連接釋放給連接池時,連接池將新釋放的連接分配給在隊列中排隊的連接請求。你可以調用close和dispose將連接歸還給連接池。

4. 我應該如何允許連接池?

對于.NET應用程序而言,默認為允許連接池。(這意味著你可以不必為這件事情做任何的事情)當然,如果你可以在SQLConnection對象的連接字符串中加進Pooling=true;確保你的應用程序允許連接池的使用。

5. 我應該如何禁止連接池?

ADO.NET默認為允許數據庫連接池,如果你希望禁止連接池,可以使用如下的方式:

1) 使用SQLConnection對象時,往連接字符串加入如下內容:Pooling=False;

2) 使用OLEDBConnection對象時,往連接字符串加入如下內容:OLE DB Services=-4;

責任編輯:田樹 來源: 博客
相關推薦

2009-11-03 16:17:39

ADO.NET Ent

2009-11-12 14:18:19

ADO.NET分頁

2009-10-28 09:48:31

VB.NET XmlR

2009-11-11 14:04:14

ADO.NET連接池

2009-11-05 11:12:21

WCF自宿主

2009-10-27 13:14:35

VB.NET窗體應用

2009-11-03 15:58:22

2009-12-23 14:53:28

ADO.NET連接池

2015-09-22 15:24:27

SDNDocker

2015-09-22 16:11:41

SDNDocker

2009-10-28 14:51:33

VB.NET設計制作窗

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連接池

2009-10-28 13:54:38

linux安裝顯卡驅動

2009-10-27 15:42:04

VB.NET文件對象

2009-10-28 12:05:32

linux監控技術

2011-04-13 09:40:27

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕二区 | 懂色tv| 性做久久久久久免费观看欧美 | 国产成人99久久亚洲综合精品 | 日韩在线一区二区三区 | 成人免费在线 | 成人精品一区二区户外勾搭野战 | 久久久一区二区三区 | 国产精品呻吟久久av凹凸 | 欧美一区不卡 | 日韩福利在线 | 久久精品一区二区视频 | 欧美久久一级 | 精品久久影院 | 人人爽人人爽 | 日韩欧美一区在线 | 欧美a区| 草久久免费视频 | 久久视频精品 | 一区二区三区四区在线播放 | 97国产一区二区 | 久久久久精 | 日本中文字幕在线视频 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 久久网一区二区 | 一区二区免费看 | 欧美性猛片aaaaaaa做受 | 亚洲精品一区二区三区丝袜 | 欧美日韩激情 | 亚洲国产69 | 男女羞羞在线观看 | 午夜欧美一区二区三区在线播放 | 在线播放国产一区二区三区 | 91久久精品国产免费一区 | 色婷婷综合久久久久中文一区二区 | 久久久国产精品 | 亚洲成人久久久 | 91香蕉嫩草| 激情亚洲 | 99精品国产一区二区青青牛奶 | av在线免费观看网址 |