2

Jmeterでパフォーマンステストを行っているときに、Webアプリケーションで問題が発生しました。私の質問は、代わりにJmeterに関するものではなく、単純なサーブレットセッション管理動作に関するものです。

そのため、ログインページをリクエストすると、応答ヘッダーで「セッションID」が返され、ブラウザによる後続のリクエストに使用されるWebアプリケーションがあります。セッションIDはユーザー名とパスワードとともに渡され、認証された場合、新しいセッションIDが返され、セッションはそのセッションIDで維持されます。これはCookieを使用しています。

現在、Jmeterには、負荷テストのためのスレッドベースのアプローチがあります。スレッドを並行して実行すると、基本的に各スレッドがログインページを要求し、Cookieに新しいセッションIDが含まれる後続のログインページが古いまたはを無効にするので、ログインページを要求する最後のスレッドのみが認証されます。他のセッションID。

これは、各スレッドが異なるセッションであり、独自のCookieマネージャーを持っているという事実にもかかわらずです。それはかなり奇妙です。

しかし、私の質問は次のとおりです。

  1. ログインページにセッションIDを付けるのは理にかなっていますか。アプリケーションにアクセスするとすぐにセッションが作成される可能性がありますが、それは、セッションIDで新しいCookieを設定するものですか?このアプリケーションはすでに書かれているので、私はただ疑問に思っています。

  2. 各スレッドのセッションIDがjmeterでオーバーライドされている場合、それは、個別のCookieマネージャーを適切に割り当てることができないことを意味しますか?また、スレッドが異なるセッションであっても、古いセッションIDまたはCookieが破棄される可能性はありますか?

サーバーは、後続のリクエストのためにセッションID / Cookieを無効にすることをどのように知るのでしょうか?ブラウザが異なれば、複数のセッションを並行して開くことができるので、リクエスターのIPアドレスに基づくものではないと確信しています。

この問題に関するアイデア、説明、および光をいただければ幸いです。

4

2 に答える 2

0

これはまったく解決されましたか?ログインページにセッション ID が表示されるのは非常に珍しいことです。セッションは、サーバー側にデータを保存し、そのデータを接続ユーザーに関連付けるためのものです。もちろん、ユーザーを認証する前に、データサーバー側が存在するべきではありません。

于 2012-05-14T09:09:14.840 に答える
0

サーバーはセッションをタイムアウトするだけです。ここでCookieを書きすぎているようです。

URL にセッション ID を含めることで、それがどのように管理されるかを試してみましたか (ブラウザーで無効になっている Cookie をシミュレートします)。これは機能しますか?

于 2009-09-08T12:18:56.660 に答える