亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ado.Net Sybase怎么用

發布時間:2021-11-03 16:32:44 來源:億速云 閱讀:129 作者:小新 欄目:編程語言

這篇文章主要介紹了Ado.Net Sybase怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

前幾天同事問我一個問題,一種CS架構的程序,直接把SQL Server作為服務端,每個客戶端直接連接數據庫操作(kay注:S2的cs項目就是這種架構),如果客戶端打開的數量過多時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連接池的文章,感覺不錯。

連接池允許應用程序從連接池中獲得一個連接并使用這個連接,而不需要為每一個連接請求重新建立一個連接。一旦一個新的連接被創建并且放置在連接池中,應用程序就可以重復使用這個連接而不必實施整個數據庫連接創建過程。

當應用程序請求一個連接時,連接池為該應用程序分配一個連接而不是重新建立一個連接;當應用程序使用完連接后,該連接被歸還給連接池而不是直接釋放。

如何實現連接池

確保你每一次的連接使用相同的連接字符串(和連接池相同);只有連接字符串相同時連接池才會工作。如果連接字符串不相同,應用程序就不會使用連接池而是創建一個新的連接。

優點

使用連接池的最主要的優點是性能。創建一個新的數據庫連接所耗費的時間主要取決于網絡的速度以及應用程序和數據庫服務器的(網絡)距離,而且這個過程通常是一個很耗時的過程。而采用數據庫連接池后,數據庫連接請求可以直接通過連接池滿足而不需要為該請求重新連接、認證到數據庫服務器,這樣就節省了時間。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Ado.Net Sybase怎么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

惠东县| 衡阳县| 诸城市| 交城县| 准格尔旗| 泾阳县| 通城县| 夏津县| 安平县| 文山县| 卢龙县| 清远市| 台安县| 通辽市| 浑源县| 绍兴县| 阳新县| 平邑县| 平和县| 宜兴市| 淮北市| 右玉县| 苏尼特左旗| 抚远县| 鹿泉市| 墨竹工卡县| 洱源县| 陆川县| 阜新市| 福贡县| 饶河县| 江安县| 富阳市| 师宗县| 抚州市| 屏东市| 上虞市| 上林县| 甘泉县| 颍上县| 巩义市|