Oracle 11g と asp.net で接続プールを処理する最良の方法は何ですか。しばらくすると、Oracle が Web アプリケーションの新しい接続を開くことを拒否するという問題が発生しています。
これにより、リクエストがタイムアウトになり、キューに入れられます。
編集: これを微調整するためにOracleで行う必要があることはありますか?
Oracle 11g と asp.net で接続プールを処理する最良の方法は何ですか。しばらくすると、Oracle が Web アプリケーションの新しい接続を開くことを拒否するという問題が発生しています。
これにより、リクエストがタイムアウトになり、キューに入れられます。
編集: これを微調整するためにOracleで行う必要があることはありますか?
Oracle の構成について言及していないため、最初の一連のアクションを説明するのは難しいため、セッション数を明確にする必要があります。
SELECT username, count(1) FROM v$session GROUP BY username;
Oracle の最大値は、「PROCESSES」インスタンス パラメータによって制御されます。デフォルトは 150 のようなものかもしれません。OLTP Web アプリの場合は 300 程度に増やしてみてください。ただし、PROCESSES が Oracle ADO 接続文字列の「最大プール サイズ」設定と少なくとも同じ大きさであることを確認してください。11g ODP.NET のデフォルトは 100 だと思います。
接続を閉じるだけで済みます。フレームワークはすべてのプーリングを処理する必要があります。
v$session を照会すると、すべての未解決のセッションが表示されます。いくつの接続があり、どれくらいの速さでそれらを作成/切断しようとしていますか? 共有サーバーは、複数のエンド クライアントが限られた数の接続を共有するためのメカニズムの 1 つです。