SQL Serverデータベースを使用して.NETでアプリケーションを開発する場合、カスタム接続プールコードを作成する必要がありますか、それとも有利ですか?ADO.NETには、接続プールを有効/無効にするオプションがあることを知っています。これは、ADO.NETがフレームワークに組み込まれていることを意味し、心配する必要はありませんか?なぜ人々は独自の接続プールソフトウェアを書くことについて話すのですか、そしてこれはADO.NETに組み込まれているものとどのように違うのですか?
5 に答える
ADO.Netに組み込まれている接続プールは、堅牢で成熟しています。独自のバージョンを作成することはお勧めしません。
私はこの問題の本当の専門家ではありませんが、ADO.NETには独自の接続プールシステムがあり、それを使用している限り、問題はありません。
私の反応は、車輪の再発明には意味がないということです...接続が終了したら、接続を閉じてください。すべてが正常になります。
他の誰かがあなたにもっとしっかりした答えを与えることができることを願っています!
私の理解では、SqlConnectionオブジェクトを使用すると、接続プールが自動的に処理されます。これは、MSSQLで動作するように意図的に設計されており、接続が効率的にプールされるようにします。あなたはそれらを使い終わったときにそれらを閉じることを確認する必要があります(そしてそれらが処分されることを確認してください)。
私は人々が自分自身を転がす必要があるということを聞いたことがありません。しかし、私の経験はそこでは限られていることを認めます。
ADO.Net の出現と新しいバージョンの SQL 接続プーリングは、最初は ADO.Net 自体を介して、次に SQL Server 2005/2008 によって直接、2 つのレイヤーで処理されるため、カスタム接続プーリングの必要がなくなります。
同様のサポートが計画されているか、Oracle と MySQL で興味を持って実装されているとの連絡を受けました。
さて、これらすべての質問への答えはLINQになるので、それはなくなるでしょう。ちなみに、どのアプリケーションにもカスタム接続プールは必要なかったので、すべてのノイズが何であるかはわかりません。