問題タブ [connection-pooling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
connection-pooling - Websphere Application Server 6.1 接続プールに関する質問 - AS が接続に失敗するとどうなるか
私は、Websphere Application Server Express v6.1 の Websphere ドキュメント「接続ライフ サイクル」を調査し、以下の回答を Web で検索しました。
接続プールの状態
- 既存のプールされた接続の事前テストが選択されています - 再試行間隔はゼロ秒です
- 新しい接続の事前テストが選択されています - 再試行回数はゼロで、再試行間隔は 0 です。
- 事前テストの SQL 文字列は "Select 'Hello' from dual" です
事前テストが失敗した場合はどうなるか
- inFreePool または InUse 状態の接続はありませんか?
- inFreePool 状態に接続がありますか?
「データ ソース > data_source > Websphere Application Server データ ソース」の設定を参照しています。
python - Twisted の接続プール サイズを増やす方法は?
ソケット サーバー エンジンとして Twisted 8.1.0 を使用しています。リアクター - epoll。データベース サーバーは MySQL 5.0.67 です。OS - Ubuntu Linux 8.10 32 ビット
で/etc/mysql/my.cnf
:
ソースコード:
SHOW PROCESSLIST
しかし実際には、アプリケーションが高負荷で実行されている場合、200 (またはそれ以下) の開いている接続 ( ) しか確認できません。私のアプリには十分ではありません:(
ご覧のとおり、これはスレッドプールの制限です。何か案は?
mysql - C 用の標準の mysql 接続プール ライブラリはありますか?
データベース アクセスにMySQL ライブラリを使用する C アプリケーションがあります。
このようなアプリケーションにデータベース接続プーリングを実装する標準的な方法はありますか? C コネクタはサポートしていないようです。
java - 接続プール内の最適な接続数
現在、同じボックスに MySQL 5.x がインストールされた 8 GB RAM の 4 CPU Windows ボックスを使用しています。アプリケーションにWeblogicアプリケーションサーバーを使用しています。アプリケーションで 200 人の同時ユーザーをターゲットにしています (明らかに、同じモジュール/画面ではありません)。では、接続プールで構成する必要がある最適な接続数 (最小数と最大数) はいくつでしょうか (weblogic AS の接続プーリング メカニズムを使用しています)。
sql-server - ASP.Net アプリケーションで、接続プールから新しい接続を取得するとタイムアウトになります。軽減のための提案が必要です
中程度の負荷がかかると、特定のデータベースで次のエラーが発生することがあります。
「System.InvalidOperationException: タイムアウトが発生しました。プールから接続を取得する前にタイムアウト期間が経過しました。これは、プールされたすべての接続が使用中で、最大プール サイズに達したために発生した可能性があります。」
私はコードをくまなく調べて、確立したいくつかのケースを除いて、finally ブロックで接続を閉じていますが、非常にまれにしか呼び出されていません。次のリリースでこれらのコードを修正しますが、現在の本番環境の問題を解決するために、最大プール サイズを 300 に増やすことを提案しています。 100)。
また、複数の接続プールを不必要に作成しないように、特定の SQL Server インスタンスへのすべての接続文字列が同一であることを確認することもお勧めします。単一の SQL Server インスタンス内でデータベースを切り替える必要がある場合、実際の SQL クエリの前にUSE [Database]ステートメントを使用できることを願っています。
気を付けるべきアイデア、指針、提案、または落とし穴はありますか?
c# - 多くのトランザクションにわたる SQL データベース接続の管理
ロールバックまたはコミットできる単一のトランザクションで多くのデータベース挿入をラップする必要がある DAL があります。
それを処理するためのベストプラクティスは何ですか?
現在、次のことを行っています。
- DB接続とトランザクションの作成
- 実行するアクションを表すすべてのクラスをコレクションに入力します。コンストラクターを介して接続を渡します。
- try/catch で、すべてのアクション クラスをループし、その Publish() メソッドを呼び出します。
- 成功した場合はコミット (接続を閉じます)、エラーの場合はロールバックします (接続を閉じます)。
このプロセスには時間がかかる場合があり、プールされたデータベース接続が不足しているようです。トランザクションを管理するためのより良い方法はありますか?
これは、SQL 2008、.net 3.5、およびエンタープライズ ライブラリ データ アクセスの 4.1 バージョンを使用しています。
subsonic - Lage データベースでの SubSonic 3.0.0.3 t4 テンプレートの生成で接続が不足する
1400 以上のテーブルを持つデータベースに対してテンプレートを実行すると、次のエラーが発生します。サーバーは何百もの接続を示しています。これが一般的なテンプレート生成の問題なのか、それともこれらのテンプレートの問題なのかは誰にもわかりません。他の小さな DB は問題なく生成されます。
実行中の変換: System.InvalidOperationException: タイムアウトが発生しました。プールから接続を取得する前に、タイムアウト期間が経過しました。これは、プールされたすべての接続が使用中で、最大プール サイズに達したために発生した可能性があります。
System.Data.ProviderBase.DbConnectionFactory.GetConnection (DbConnection owningConnection) で System.Data.ProviderBase.DbConnectionClosed.OpenConnection (DbConnection outerConnection, DbConnectionFactory connectionFactory) で System.Data.SqlClient.SqlConnection.Open() で Microsoft.VisualStudio.TextTemplating8D8967BD3E8719BDA6DD9945992440F1 で。 c:\POS\POS.Win\Templates\SQLServer.ttinclude の GeneratedTextTransformation.GetCommand(String sql): c:\POS\POS.Win\Templates の Microsoft.VisualStudio.TextTemplating8D8967BD3E8719BDA6DD9945992440F1.GeneratedTextTransformation.LoadFKTables(String tableName) の 13 行目\SQLServer.ttinclude: Microsoft.VisualStudio.TextTemplating8D8967BD3E8719BDA6DD9945992440F1.GeneratedTextTransformation.LoadTables() の 179 行目 c:\POS\POS.Win\Templates\SQLServer.ttinclude:Microsoft.VisualStudio の 131 行目。c:\POS\POS.Win\Templates\ActiveRecord.tt:line 21 の TextTemplating8D8967BD3E8719BDA6DD9945992440F1.GeneratedTextTransformation.TransformText()
database - 接続プーリングを備えた優れたデータベース(ファクトリ)クラスはどこにありますか?
データベースファクトリの作成方法や接続プールの処理方法に関する多くの情報を見つけましたが、完全な解決策はどこにも見つかりませんでした。
私はいつも自分のソリューションを使用してきましたが、完全ではないか、改善できると思います。
私がネット上で見つけることができるあなたの誰かが使用するいくつかの良いデザインのクラスはありますか?
ありがとう ;-)
java - JDBCの基本概念、プーリングとスレッディング
私は常にシングルスレッド環境のJavaSEでJDBCを使用していました。しかし、今は接続プールを使用して、多くのスレッドがデータベース(MSSQLおよびOracle)と対話できるようにする必要があり、APIの基本的な理解が不足しているように見えるため、接続プールを作成するのに苦労しています。
接続してログに記録した後のAFAIKConnection
は、データベースへの物理的なtcp/ip接続を表します。これはStatement
、を介したデータベースとのSQLインタラクションと見なすことができる(s)を作成しますConnection
。
- トランザクションとロールバックはどこで発生しますか?
Connection
またはStatement
レベルですか。 - 'one'
Connection
がN個のステートメントを作成し、それを異なるスレッドに渡して、それぞれがその使用を所有できるようにするのは安全Statement
ですか?
そうでない場合、およびプールを構成した後、次のようになります。
ところで、接続プールのサイズはどこで設定できますか?
これは、接続を正しく使用するために各スレッドで行うことですか?
//theadrunメソッド
//スレッド実行メソッドの終了
- プールの物理的な接続が何らかの理由でクラッシュまたは切断された場合、プールは自動的に再接続を試み、プールに新しい接続を挿入して、後続のpool.getConnection()が正常な接続を取得するようにしますか?
どうもありがとう、私の悪い英語を許してください。