問題タブ [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 投票する
0 に答える
372 参照

tomcat - Tomcatサーブレットアプリでデータソースを静的に保つ最良の方法

サーブレット技術を備えたTomcat 8にWeb APPがあります。DB接続の場合、静的データソースを保持するサーブレットリスナーと、getConnectionを実行する静的メソッドがあります。servletListener.getConnection(); に呼び出すことができるサーベットですべて正常に動作します。

しかし、クラス内ではそれを呼び出すことはできません。

インターネットでこのクラスを見つけました:

すべてのクラスから呼び出せるので気に入っています。それが最善の方法かどうかはわかりません。

他のアプローチ?推奨事項はありますか?

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

java - c3p0 プールの identityToken と JDBC プール名をリンクする方法

まず、私は監視管理者であり、Java 開発者ではないことを覚えておいてください。

c3p0プールのいくつかの属性値を監視したいのですが、そのようなプールにはidentity Token、英数字の文字列と、パイプ文字で結合された 16 進数の文字列で構成される一意の値があることがわかりました。たとえば、次のようになります。

context.xmlただし、 Tomcat サーバーのファイルにある JDBC プールには、標準的な名前しか表示されません。

JAR を使用して、JMX 接続を介して実行中の Java プロセスの MBean をクエリします。ここにあるCatalina:type=Resourceもの:

そしてここにあるcom.mchange.v2.c3p0もの

これらは私の質問です:

  1. ID トークンとリソース プール名をリンクする方法は?

  2. サンプル アプリでは、ファイルに 5 つのリソースが定義されていcontext.xmlますが、c3p0 プールは 15 あります。これは、C3P0Registry/AllIdentityTokenizedCountおよびC3P0Registry/AllPooledDataSourcesCount属性にも見られます。一対一の関係ではないですか?

  3. ID トークンはどのように作成されますか? それらはランダムですか?2つの文字列は何を意味しますか. それらはプロセスまたはマシンの値に関連付けられていますか?

ありがとう

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

java - tomcat - HTTP コネクタの maxThreads / acceptCount と JDBC プール maxActive の比率

の間に常識的に認められた比率として何かがありますか?

  • HTTP コネクタmaxThreads (ユーザー要求を処理する最大 HTTP スレッド)、
  • HTTP コネクタの acceptCount (可能なすべての要求処理スレッドが使用中の場合の着信接続要求の最大キュー長)
  • DB プールのmaxActive (プール内の最大 DB 接続数) 構成プロパティー

データベースを頻繁に使用するTomcatを使用するWebベースアプリケーションに関しては?

つまり、たとえば、ほぼすべての HTTP 要求接続がデータベースを集中的に使用しているということです。したがって、fe の場合、構成された DP プールのmaxActive (たとえば 100) ははるかに少なく、HTTP コネクタのmaxThreads (たとえば 200) は 2 倍大きくなります。次に、1 つの同じ DB 接続を HTTP 接続間で共有する可能性があります。これにより、DB の使用率が高くなり、 DB の接続が停止する可能性があります。

ほとんどの場合、Web HTTP リクエストの構成はデータベース プールの構成とは関係がないことは承知していますが、プロパティ間の比率 (maxThreads/acceptCount maxActive) に関する一般的なケース/プラクティスはありますか? たとえば、HTTP の maxThreads を DB の maxActive よりも大きくするのが一般的な方法です (ただし、この例では 100% 大きいと考えるのは多すぎます。最大で 20% または 50% 大きいとしましょう)。値なので、他の HTTP 要求がアプリケーションによって処理されるまでに HTTP 要求をキューに入れるには?

ここにも同様の質問があります: Tomcat - Http コネクタで maxThreads と acceptCount を構成していますが、それ以上の正確な答えはありません