スタンドアロンJavaマルチスレッドアプリケーションのDb接続プールは意味がありますか?

サビールカーン

私はこれらの質問をしてきた- DB接続プールを選択しすべてが重要なプールされたDB接続javaの-スタンドアロンアプリケーションのDataSource -なしアプリケーションサーバー

そしてそれらは私の好奇心に答えません。

私が持っているのはスタンドアロンのマルチスレッドJavaアプリケーションで、オフまたは低ロードウィンドウでDBへのデータロードを実行することになっていますが、限られた時間内に完了するのに十分な速度である必要があります。

Javaスレッドの数は構成可能ですが、最大数に制限されています。

DB接続に関する限り、私は現在、スレッドごとに新しい接続を取得し、そのスレッドが完了するとそれを閉じています。サードパーティのDB接続プールを使用しない理由は、

1.最大Javaスレッドの数は固定制限に制限されており、その制限はDB(そのDB2データベース)によって管理可能です。

2. DBプールからの接続の不要な待機を回避し、複数のスレッド間の衝突または待機時間を回避します(プール内に空き接続がない場合)

したがって、私のシナリオでは、DB接続プールが本当に必要になるのでしょうか、それとも長期的には問題に直面するのでしょうか、それとも機能を備えているだけでいいのでしょうか。

リクエスト/スレッドの数が事前にわからないため、接続プールはWebアプリの場合に意味がありますが、最大スレッド数が固定されたスタンドアロンアプリの利点についてはわかりません。

必要に応じてC3P0接続プールを使用することを考えています。

エリオットフレッシュ

接続プールを使用すると、接続プールを使用しない場合に比べていくつかの利点があります。

  1. スレッドの開始時に、プールで接続が使用可能な場合スレッドは開始時に新しい接続を開くためにブロックしません。
  2. スレッドの1つが完了すると、接続をプールに戻すことができます。これにより、クライアント接続が(アプリケーションの実行を通じて)持続するため、データベースサーバーの負荷が軽減されます。何度もセットアップして分解する代わりに

単純に(C3P0と私はあなただけ信じるあなたの上記データベースの制限に合わせて、あなたのプール内の接続の最大数を制限し、プールを確認してくださいあなたの接続を返すように自分で包まれているが、)。closeConnectionPooledConnection

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

PythonがマルチプロセッシングアプリケーションまたはマルチスレッドアプリケーションでJavaよりも優れていないのはなぜですか?

分類Dev

Oracle、1ユーザー(アプリケーション接続)マルチコンカレントセッション(マルチスレッド接続)

分類Dev

マルチスレッドアプリケーションでのオプションのデバッグ出力-つまり、デッドロックやバグを把握するためではなく、*クライアント用*を意味します。

分類Dev

forkコマンドはマルチスレッドアプリケーションで機能しますか?

分類Dev

マルチスレッド化(つまり、スレッドプールベース)は、Javaアプリケーション内の破損結果

分類Dev

シングルスレッドアプリケーションでのEntityFrameworkデータベース接続

分類Dev

タスクマネージャーがジョブマネージャーへの接続に失敗する[ループバックまたはリンクローカルではないIPv4アドレスが見つかりませんでした。ローカルホストアドレスを使用します。]

分類Dev

マルチスレッドJavaアプリケーションでのSQLite

分類Dev

マルチスレッドJavaアプリケーションの分析

分類Dev

gprofはマルチスレッドアプリケーションをサポートしていますか?

分類Dev

CoreDataマルチスレッドアプリケーション

分類Dev

マルチスレッドWindowsPhoneアプリケーション

分類Dev

WinAPIマルチスレッドアプリケーション

分類Dev

純粋なユーザーレベルのスレッド戦略では、マルチスレッドアプリケーションがマルチプロセッシングを利用できないのはなぜですか?

分類Dev

マルチスレッドアプリケーションからのプロセスの生成

分類Dev

Javaでのマルチスレッドアプリケーションへのログイン

分類Dev

マルチスレッドアプリケーションの表示タスクには、アトミックロックまたはミューテックスロックが必須ですか?

分類Dev

アプリケーションのインストールとアップグレードに関する経験則はありますか?

分類Dev

マルチプロセッシングまたはマルチスレッドアプリケーションでCPU時間を予約する

分類Dev

マルチスレッドアプリケーションのプロセッサ数を制限する

分類Dev

Java-BlockingQueueがマルチスレッドアプリケーションをフリーズする

分類Dev

マルチスレッドJava GRPC(1.1.2)クライアントのManagedChannelインスタンスをプールする必要がありますか?

分類Dev

このマルチスレッドJavaアプリケーションでは、1つのスレッドのみが順次プログラムのように実行されているように見えますか?

分類Dev

Hibernateは「org.hibernate.exception.JDBCConnectionException:接続を開くことができませんでした」をマルチスレッドアプリケーションでランダムにスローします

分類Dev

マルチスレッドアプリケーションでNHibernateデータが同期していません

分類Dev

パフォーマンス-マルチスレッドまたはマルチプロセスアプリケーション

分類Dev

マルチスレッドアプリケーションの再利用可能なコードのタイマー

分類Dev

マルチスレッドアプリケーション(デコレータまたはインターセプタ?)でのIOCの正しい使用

分類Dev

シングルスレッドCPU上のマルチスレッドアプリケーション?

Related 関連記事

  1. 1

    PythonがマルチプロセッシングアプリケーションまたはマルチスレッドアプリケーションでJavaよりも優れていないのはなぜですか?

  2. 2

    Oracle、1ユーザー(アプリケーション接続)マルチコンカレントセッション(マルチスレッド接続)

  3. 3

    マルチスレッドアプリケーションでのオプションのデバッグ出力-つまり、デッドロックやバグを把握するためではなく、*クライアント用*を意味します。

  4. 4

    forkコマンドはマルチスレッドアプリケーションで機能しますか?

  5. 5

    マルチスレッド化(つまり、スレッドプールベース)は、Javaアプリケーション内の破損結果

  6. 6

    シングルスレッドアプリケーションでのEntityFrameworkデータベース接続

  7. 7

    タスクマネージャーがジョブマネージャーへの接続に失敗する[ループバックまたはリンクローカルではないIPv4アドレスが見つかりませんでした。ローカルホストアドレスを使用します。]

  8. 8

    マルチスレッドJavaアプリケーションでのSQLite

  9. 9

    マルチスレッドJavaアプリケーションの分析

  10. 10

    gprofはマルチスレッドアプリケーションをサポートしていますか?

  11. 11

    CoreDataマルチスレッドアプリケーション

  12. 12

    マルチスレッドWindowsPhoneアプリケーション

  13. 13

    WinAPIマルチスレッドアプリケーション

  14. 14

    純粋なユーザーレベルのスレッド戦略では、マルチスレッドアプリケーションがマルチプロセッシングを利用できないのはなぜですか?

  15. 15

    マルチスレッドアプリケーションからのプロセスの生成

  16. 16

    Javaでのマルチスレッドアプリケーションへのログイン

  17. 17

    マルチスレッドアプリケーションの表示タスクには、アトミックロックまたはミューテックスロックが必須ですか?

  18. 18

    アプリケーションのインストールとアップグレードに関する経験則はありますか?

  19. 19

    マルチプロセッシングまたはマルチスレッドアプリケーションでCPU時間を予約する

  20. 20

    マルチスレッドアプリケーションのプロセッサ数を制限する

  21. 21

    Java-BlockingQueueがマルチスレッドアプリケーションをフリーズする

  22. 22

    マルチスレッドJava GRPC(1.1.2)クライアントのManagedChannelインスタンスをプールする必要がありますか?

  23. 23

    このマルチスレッドJavaアプリケーションでは、1つのスレッドのみが順次プログラムのように実行されているように見えますか?

  24. 24

    Hibernateは「org.hibernate.exception.JDBCConnectionException:接続を開くことができませんでした」をマルチスレッドアプリケーションでランダムにスローします

  25. 25

    マルチスレッドアプリケーションでNHibernateデータが同期していません

  26. 26

    パフォーマンス-マルチスレッドまたはマルチプロセスアプリケーション

  27. 27

    マルチスレッドアプリケーションの再利用可能なコードのタイマー

  28. 28

    マルチスレッドアプリケーション(デコレータまたはインターセプタ?)でのIOCの正しい使用

  29. 29

    シングルスレッドCPU上のマルチスレッドアプリケーション?

ホットタグ

アーカイブ