0

私は、c3p0 などの接続プール ライブラリに精通しています。Tomcat や WebSphere などの Web コンテナーによって管理される接続プールに慣れています。

しかし、スタンドアロンのバッチ モード Java アプリケーション (main メソッドを使用するもの) があり、接続プーリングを利用できるようにするシナリオはどうでしょうか。つまり、スタンドアロン プログラムがプールを管理する場合、プログラムは実行され、プールが作成され、接続が使用されてから終了し、プールが破棄されます。アプリケーションを実行して既存の接続プールを利用したい場合、これは実際には何も購入しません。

私が尋ねているのは、データベースと接続プールを管理できる Java コマンドライン アプリケーションとの間で実行できるソフトウェアのレイヤーがあるかどうかです。このソフトウェアは、Java アプリケーションが JDBC を介して接続プールにアクセスするためのポートを提供します。したがって、このポートを指す JDBC URL を持つすべてのアプリケーションは、接続プールを使用できます。現在、スタンドアロン アプリケーションは、ミドルウェア サーバー (Tomcat、GlassFish) がなくても、接続プールを利用できます。

かっこいいね。それは存在しますか?そして、Oracleには存在しますか:)

4

2 に答える 2

0

私はそれをテストしませんでしたが、興味深いようです:

DBPool : Java データベース接続プーリング

DBプールとは?

時間ベースの有効期限、ステートメントのキャッシュ、接続の検証、およびプール マネージャーを使用した簡単な構成をサポートする、Java ベースのデータベース接続プーリング ユーティリティ。

于 2013-07-28T08:28:59.263 に答える
0

あなたのセットアップを理解しているので、プールはスタンドアロンプ​​ロセスでなければなりません。つまり、バッチはデータベースに適した JDBC ドライバーを使用しますが、プールと通信する必要があります。これは、プールがデータベースの独自のプロトコルを使用する必要があることを意味します。これは、妥当な努力を払っても 1 つの製品で行うことはできません。

したがって、一般的な解決策ではなく、特定のデータベースの解決策を求める必要があります。

たとえば PostgreSQL には、PgBouncer と pgpool の 2 つのプールがあります。

于 2013-07-28T09:07:33.900 に答える