問題タブ [jdbc-pool]

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 投票する
2 に答える
30779 参照

java - Tomcat 8 にアップグレードすると ClassNotFoundException が発生する

最近、NetBeans IDE を v7.3 から v8 にアップグレードしたところ、DB への接続中にサーバーの起動時にアプリケーションが突然例外をスローしました。これら 2 つのバージョンの IDE の唯一の違いは、後者が Tomcat 8 を使用していることです。

例外ログ:

META-INF/context.xml

ガイドしてください。

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

jdbc - JDBC 接続プール マネージャ

私たちは、PHP から派生した Java で Web アプリケーションを書き直そうとしています。確かではありませんが、接続プーリングに関して問題が発生する可能性があると思います。アプリケーション自体はマルチテナントであり、「別データベース」と「別スキーマ」を組み合わせたものです。

すべての Postgres データベース サーバー インスタンスに対して、複数のスキーマ (スキーマがテナントである場合) を保持する複数のデータベース (schemax_XXX という名前) が存在する可能性があります。サインアップ時に、次の 2 つのいずれかが発生する可能性があります。

  1. 最大番号の schema_XXX データベースに新しいテナント スキーマが作成されます。
  2. サインアップ プロセスは、データベースが完全に割り当てられていることを確認し、新しい schemas_XXX+1 データベースを作成します。この新しいデータベースで、テナント スキーマが作成されます。

すべてのテナントは、中央レジストリ (Postgres データベースでもあります) を介して認識されます。セッションが確立されると、レジストリはテナントのホスト、データベース、およびスキーマを解決し、その HTTP 要求に対してデータベース セッションが確立されます。

さて、私がここで見ていると思う問題は2つあります。

  1. JDBC 接続プールは、アプリケーションの開始時に定義されます。つまり、起動時にすべてのデータベース (ホスト + データベース) が認識されるということです。これは、サインアップ プロセスと競合します。
  2. 私がこれを書いているとき、約 1000 のデータベースを持つ約 20 のデータベース サーバーがあります (合計で約 100,000 (テナント) スキーマ)。これらの数を考えると、アプリケーションのインスタンスごとに 20*1000 のデータ ソースが必要になります。 m は、すべてのプールも、一度または別の時点で開始されていることを前提としています.プールがどれだけのリソースを割り当てるかはわかりませんが、20,000 プールではかなりの量になるはずです.

では、これに接続プールを使用できると想定することは可能でしょうか?

最初の問題については、JMX をサポートするプールを使用でき、新しい schemas_XXX データベースが作成されたときに新しいデータソースを作成すると思います。より大きな問題は、膨大な量のプールの問題です。このためには、接続が開いていないプールを終了できる (また、オンデマンドでプールを開始できる) ある種のプール マネージャーを使用する必要があると思います。これをサポートするものは見つかりませんでした。

どのようなオプションがありますか? それとも、PgBouncer などのプロセス外接続プールにフォールバックして、現在 PHP で処理しているのと同様に、リクエストごとにプレーンな JDBC 接続を確立する必要がありますか?

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

java - Vibur DBCP を Oracle DB に接続中にエラーが発生しました

Oracle 11g DB インスタンスに対して動作するようにVibur DBCPをセットアップしようとしていますが、Oracle 例外が発生し続けます。

これは URL = jdbc:oracle:thin:@//db.vonagenetworks.net/MY_SERVICE です。

この URL は、Tomcat 接続プールで使用すると機能します。

次のエラーが表示されます…。

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

mysql - jdbcプールを使用したgrails 2.2.4の待機状態のMySQLステートメントキャンセルタイマー

バージョン2.2.4のgrailsアプリでjdbcpool 7.0.47を使用しました。スレッドダンプを確認すると、多くの「MySQL Statement Cancellation Timer」が待機状態にあることがわかります。また、jdbc コネクタを tomcat/lib に移動しようとしましたが、mysql で日付の問題が発生し始めました。したがって、それらのスレッドを殺す他の方法

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

java - dbの接続を拒否した理由

私はウェブアプリケーションを持っています。そして、jdbc データベース プーリング システムがあります。

minIdleinitialSizeの値が 50 の場合、次のエラーが発生します。

これは、多くの接続を取得するように XE oracle を構成する必要があるためです。

私はこのようなことをします:

しかし、これは私を助けませんでした。

また:

Windows 7 x64 を使用しています。これがOracle Express Editionです。