問題タブ [apache-commons-dbcp]

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.

0 投票する
3 に答える
2078 参照

java - このエラーは、OS またはデータベースに関連していますか?

数時間正常に動作した後にエラーが発生するJavaプログラムがあります...これらのプログラムは、Windows Server 2003を搭載した以前のサーバーで正常に動作していましたが、より高い構成でWindows Server 2008にアップグレードし、新しくインストールしましたSQL Server .欠落しているデータベース設定はありますか、または欠落しているOS設定はありますか??

私が受け取る例外は次のとおりです。

エラー::

org.apache.commons.dbcp.SQLNestedException: PoolableConnectionFactory を作成できません。原因: ネットワーク エラー

IOException: 利用可能なバッファ領域がありません (最大接続数に達しましたか?): 接続

0 投票する
2 に答える
5530 参照

java - データベース プール内のライブ データベース接続を表示/監視する方法を教えてください。

Java アプリケーションにはデータベース接続プーリングを使用します。Tomcat で実行される Web アプリです。

作成および破棄されたプール内のライブ接続を表示したいと考えています。誰か助けてくれませんか?

更新: Oracle 11g を使用しています。接続プーリングには DDConnectionBroker ライブラリを使用します。

0 投票する
1 に答える
3174 参照

java - MySQLを使用したTomcatでのPreparedStatementのプーリング

MySQLでTomcatを使用する場合、Tomcat DataSource構成のpoolPreparedStatements設定(DBCPからのものと思われます)とConnector / J cachePrepStmts設定の関係は何ですか?最適な構成は何ですか?

0 投票する
2 に答える
8193 参照

apache - org.apache.commons.dbcp.BasicDataSource に関する質問

BasicDataSource の使用方法に関連するいくつかのバグを修正しました。その一部は理解していますが、まだ回答されていない質問がいくつかあります:)

問題: データベースの障害の後、アプリケーションがデータベースに自動接続できませんでした。

アプリケーションは、Oracle db への JDBC 接続用の TCP 接続プールとしてorg.apache.commons.dbcp.BasicDataSource クラスを使用しています。

修正: いくつかの調査の結果、BasicDataSource で testOnBorrow と testOnreturn が設定されていないことがわかりました。接続をテストするための検証クエリを提供しました。これで問題が解決しました

プール内の接続の最大数が 1 に設定されました

私の理解: 接続プールは接続をアプリケーションに引き渡します。私が考えていたのは、データベースがクラッシュしたときにアプリケーションが魔法のように悪いコレクションをプールに返したことです。プールは接続が正しくないかどうかわからないため、次に必要になったときに同じ接続をアプリケーションに引き渡すため、アプリケーションはデータベースに自動再接続しません。

さて、修正後..接続プールに不良接続が返されるたびに、上記で行った修正のために破棄され、再度使用されることはありません。

これで、アプリケーションに与える前に BasicDataSource が接続をラップすることがわかりました。これにより、アプリケーションが con.close ..BasicDataSource と言うたびに、接続がもう使用されていないことがわかります..プールに接続を返すか、接続を処理します。破棄など

未回答の質問: しかし、私が理解していないのは、アプリケーションが壊れたときに魔法のように接続を接続プールに返す理由です[接続が正常に終了しない場合、con.closeメソッドは呼び出されないことに注意してください] BasicDataSource が接続が閉じられたこと、または ? があることを知る方法はありません。誰かがそのためのコードを教えてもらえますか?

私の全体的な理解は、修正が機能した理由につながりますか??

0 投票する
2 に答える
6430 参照

java - データベース接続プーリング ライブラリの最適な選択は何ですか? (c3p0問題)

hirbernate を使用して高負荷の Java アプリケーションを使用しています。また、以前は接続プールDBCPとして使用していましたが、接続が失われるという問題がありました。私はc3p0に切り替えました。しかし、今ではスレッドがブロックされることがありますが、その理由はわかりません。ここみたいに:

' スタック トレース ダンプは、このスレッドが他のすべてのスレッドをロック <0x00007fa7286d9728> でブロックしていることを示していたため、しばらくするとサーバーが完全にブロックされました。1 つのスレッドが他のすべてのスレッドを長時間ブロックしていた場合、またはこのスレッドで消費された時間が非常に長かった場合、このスレッドの実行時間はわかりませんが、結果として、システムが完全にブロックされ、非常に遅くなりました。私はたくさんグーグルで検索しましたが、この問題を解決する方法がわかりません。接続を閉じてできるだけ早くトレッドを終了するには、プールが必要です。他の接続プールを使用する必要がありますか? 私にとっては、このプール ライブラリが 100% 保存され、デッドロック、ライフロック、飢餓がなく、他のライブラリよりも少し遅いことが絶対に必要です。

助けてくれてありがとう

0 投票する
2 に答える
743 参照

connection-pooling - データベース接続プールを選択します

アプリケーションでdb接続プールを使用したいのですが、dbcp、c3p0、proxoolなどの非常に多くのオープンサワープールがあります。

私はどちらが良いかわかりません、誰かがそれらについていくつかの経験がありますか?

0 投票する
2 に答える
325 参照

java - 実行速度の遅いクエリ

完了するまでに 3 時間かかるクエリがあります。これは以前は問題ではありませんでした。以前は、このクエリを呼び出すコードが weblogic にデプロイされ、後者の独自の接続プール マネージャーを使用していました。

このプロセスは大量のメモリを占有するため、このコードを取り出して独自のヒープ スペースで実行するようにしました。クエリを呼び出すリクエストは、jms を介して行われます。また、使用している接続プール マネージャーが、デフォルト設定 (最大接続数 = 8、最小接続数 = 0) を使用する dbcp であることにも気付きました。jms クライアントはマルチスレッドです。

インターフェイス (TOAD) を介してクエリを実行すると、2 秒しかかからないので、ここからはデータベースを「非難」することを除外しました。

ボトルネックを見つけるために、ここからどのような手順を踏めばよいか考えていました。多分接続プールで何か?

0 投票する
2 に答える
2074 参照

java - Spring DBCP 接続プーリング | 再試行回数の構成

Spring - DBCP接続プーリングで「再試行」回数を指定する方法はありますか?

初めて接続が得られない場合は、少なくとも 3 回試してみたいと思います。

0 投票する
6 に答える
52911 参照

java - tomcat-dbcp と commons-dbcp の比較

これら 2 つの接続プーリング ライブラリの間には多くの混乱があるようです。私が知りたいのは、どちらが優れているかです(もしあれば)?

ここに私が挙げたいいくつかの点があります... 誰か確認してもらえますか?

  1. Tomcat DBCP: Tomcat/lib ディレクトリにあるデフォルトの tomcat-dbcp.jar を使用します。web-inf/lib に commons-dbcp.jar または commons-pool.jar ライブラリは必要ありません。DB ドライバーは tomcat/lib に配置する必要があります。

  2. Tomcat DBCP データソース クラスはorg.apache.tomcat.dbcp.dbcp.BasicDataSource. Commons DBCP データソース クラスはorg.apache.commons.dbcp.BasicDataSource.

  3. この 2 つの唯一の違いは、このブログにあります。情報が正しいかどうかはわかりません。

  4. Tomcat の公式ドキュメントには、ほとんどのクラスの名前が変更され、再パッケージ化されたことが明確に記載されています。

問題は、どちらを使用し、どちらが優れているかです。

0 投票する
1 に答える
3937 参照

java - tomcatのserver.xmlのファクトリ属性は必要ですか?

私はTomcatのJNDIについて詳しく読んでおり、複数のリソースから、ファクトリ属性が必要であると読んでいます。彼らはそれがしばしば「 org.apache.tomcat.jdbc.pool.DataSourceFactory 」であると思われると言います。しかし、ほとんどの場合、私はこのようなものを見ます-

では、この場合、Tomcatは何をしますか?デフォルトは「org.apache.tomcat.jdbc.pool.DataSourceFactory」ですか?