web-dev-qa-db-ja.com

.NetでのOracle接続プーリング

Oracleデータベースを使用するシステムがあります。システムが接続プールを利用するかどうか尋ねられましたが、よくわかりません。

Oracle.DataAccess.Client.OracleConnection

件名を読み上げたところ、接続プーリングが接続文字列でtrueに設定されており、デフォルトでtrueに設定されていることがわかりました。

接続文字列には、プーリング設定は含まれていません。これは、プーリングを使用していることを意味しますか?使用している場合、デフォルトの最小および最大プールサイズはどのようになりますか?暗黙的に接続プーリングを使用した場合(つまり、接続文字列で指定されていない場合)にこれらの値がどうなるかについての情報を見つけることができませんでした。

10
Darren Young

接続文字列属性に関する公式のODP.NETドキュメント に指定されているように、接続プールはデフォルトでオンになっています(デフォルト:Pooling = true)。

したがって、接続文字列で何らかの種類の接続プール設定が省略されている場合、同じものに基づいて、次の基本的なデフォルト設定の接続プールが取得されます 接続文字列属性に関するODP.NETの公式ドキュメントページ

  • Connection Timeout = 15:プールからの空き接続を待機する最大時間(秒単位)。
  • Decr Pool Size = 1:確立された接続が過剰に使用されていない場合に閉じられる接続の数。
  • Incr Pool Size = 5:プール内のすべての接続が使用中のときに作成される新しい接続の数。
  • Max Pool Size = 100:プール内の最大接続数。
  • Min Pool Size = 1:プール内の接続の最小数。

ドキュメントには、他にも興味深いデフォルトのプール値が記載されており、これらについても参照したい場合があります。

12
sstan