5

私は4つのWebアプリケーションを持っています。これらは、Hibernate実装への共通の参照を持っていますが、異なるTomcatインスタンスで実行されます。したがって、たとえば、Hibernateで最小サイズが3(with c3p0)で構成された接続プールでは、すべてのプロジェクトが実行されているときに12の接続が開かれます(インスタンスごとに3)。

Hibernateの実装をインスタンスと「共有」したいので(したがって、12ではなく常に3つの接続を開いておく)、それを実現するための最良のソリューションについて考えていました。

任意のヒント?

ありがとう

4

3 に答える 3

5

Hibernateの実装をインスタンスと「共有」したいので(したがって、12ではなく常に3つの接続を開いておく)、それを実現するための最良のソリューションについて考えていました。任意のヒント?

これは良い考えではありません。つまり、接続プールは、接続が使用可能になるのを待たずに、着信同時要求を処理するのに十分な接続を含むサイズにする必要があります。4つのアプリケーションでは、3つ以上の接続が必要になる可能性があります。ロジックに何か問題があります(または明確ではありません)。

したがって、私のヒントは、十分なリソースを割り当て、スレッドプールと接続プールのサイズを適切に設定して、各アプリケーションが処理することになっている同時要求を処理することです。これにより、プールを使い果たすことはありません。

も参照してください

于 2010-08-30T20:51:40.727 に答える
1

1つのアプローチは、Hibernateを実行し、Webサービスを介してフロントエンドサービスに接続する追加のバックエンドサービスを作成することです。このように、1つのHibernateインスタンスが存在します。

于 2010-08-30T18:55:04.207 に答える
0

あなたはそれをすることはできません。各Tomcatインスタンスは独自のJVMで実行されるため、それらの間でオブジェクトやクラスを共有することはできません。

12個のDB接続が気に入らないのはなぜですか?最新のデータベースシステムは、何百万もの接続を処理できます。

于 2010-08-30T18:46:39.123 に答える