0

バックエンドでウェアハウスに接続する Java/Java EE で開発された Web アプリケーションがあります。アプリケーション サーバーとして IBM WAS があり、データベース接続用に定義されたデータ ソースがあります。接続プールの最大プール サイズは 30 に設定されています。DB クエリに最大 1 ~ 2 分かかる場合があり、ユーザーはフロント エンドで待機します。

40 人の異なる同時ユーザーが、バックエンドでクエリを実行している画面に 1 ~ 2 分でアクセスするとどうなるでしょうか。

  1. WAS の設定では、DB への接続数は最大 30 ですよね?
  2. WAS は、DB 接続が処理を終了し、接続をプールに返すまで待機します。キュー内の次のリクエストに割り当てることができますか?
4

2 に答える 2

0

残念ながら、この状況で WebSphere がどのように機能するかについてはお答えできませんが、DB の遅延機能を使用してクエリをエミュレートしてみてください。

TSQL:

--wait for 1 minute
WAITFOR DELAY '00:01'

オラクル:

DBMS_LOCK.sleep(seconds => TIME_);

等々。

次に、apache jmeter ( http://jmeter.apache.org/ ) を使用してユーザーの要求をエミュレートできます。依頼、聞き手など様々です。

Websphere 管理コンソールには、モニターとチューニングのセクションがあり、データ ソースと http 要求プール アクティビティの独自のモニターを構成できます。

このようにして、アプリケーションのボトルネックをデバッグしました。

于 2013-09-25T06:54:48.933 に答える
0

あなたの状況では、結果は次のようになります。処理中の接続の 1 つがデータソースに戻ると、待機中の接続の 1 つが作業を開始します。

于 2013-09-27T06:31:24.393 に答える