Current ConnectionsとSessions Currentの違いについて教えてください。


windows server/IIS上で動くWebサイトで
単位時間あたりの同時接続数を取得する場合に
適切なパフォーマンスカウンタは
Web Service\Current Connections と
Active Server Pages\Sessions Current の
どちらになるでしょうか。
上記の違いについて説明頂いた上で、ご回答いただきたいです。

※IIS5.0でaspを動かしています。
※負荷テストを行う際の同時接続数の参考値として取得しようと思っています。
 他に適切なパフォーマンスカウンタがあれば、ご教授いただきたいです。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2011/10/17 18:50:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント125pt

>Web Service\Current Connections

リクエストを出してから、レスポンスが返るまでの間、socket がつながっている数です。

HTTP だけじゃなくて、FTP もカウントされます。

ブラウザは、規格通りであれば、同時に2接続するので、つないでいる人の数、と同じになるわけでは無いです。


>Active Server Pages\Sessions Current

セッションが確立されているカウント。

実際に通信していなくても、ログインするようなサービスで、ログアウトして無いものがカウントされる、と考えて良いです。

使っている人に近い数字になりますが、ほったらかしで食事をしててもカウントされるので、

アクティブなユーザの数、という感じではなくなります。


単位時間あたりの同時接続数を取得する場合に

が、何をイメージしているかによりますが、NIC の負荷や、同時接続数の上限の正しさを確認するためであれば、

Current Connections を監視することになります。

監視対象のアプリケーションによりますが、セッション単位に確保しているメモリとかディスクサイズがあるなら、

そのリソースを監視する、という意味では Sessions Current を監視することになります。


http://msdn.microsoft.com/ja-jp/library/cc338040.aspx

一応、MSDN のリンクを貼っときますが、仕組みが分からんと、これじゃ何をカウントしてるか分かりませんね。

id:gloomysmoker

今回の目的ではSessions Currentを取得することにしました。

ご回答ありがとうございました。

2011/10/23 02:20:52

その他の回答3件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154ここでベストアンサー

ポイント125pt

>Web Service\Current Connections

リクエストを出してから、レスポンスが返るまでの間、socket がつながっている数です。

HTTP だけじゃなくて、FTP もカウントされます。

ブラウザは、規格通りであれば、同時に2接続するので、つないでいる人の数、と同じになるわけでは無いです。


>Active Server Pages\Sessions Current

セッションが確立されているカウント。

実際に通信していなくても、ログインするようなサービスで、ログアウトして無いものがカウントされる、と考えて良いです。

使っている人に近い数字になりますが、ほったらかしで食事をしててもカウントされるので、

アクティブなユーザの数、という感じではなくなります。


単位時間あたりの同時接続数を取得する場合に

が、何をイメージしているかによりますが、NIC の負荷や、同時接続数の上限の正しさを確認するためであれば、

Current Connections を監視することになります。

監視対象のアプリケーションによりますが、セッション単位に確保しているメモリとかディスクサイズがあるなら、

そのリソースを監視する、という意味では Sessions Current を監視することになります。


http://msdn.microsoft.com/ja-jp/library/cc338040.aspx

一応、MSDN のリンクを貼っときますが、仕組みが分からんと、これじゃ何をカウントしてるか分かりませんね。

id:gloomysmoker

今回の目的ではSessions Currentを取得することにしました。

ご回答ありがとうございました。

2011/10/23 02:20:52
id:windofjuly No.2

回答回数2625ベストアンサー獲得回数1149

ポイント125pt

状況確認だとすると、まずは下記の値を定期的にチェックといったところです

http://msdn.microsoft.com/ja-jp/library/aa287688%28v=vs.71%29.aspx

Current Anonymous Users認証を行わないストレス テストの実行中の、サービスへの現在の接続数を表します。
Current Non-Anonymous UsersHTTP サーバーに現在接続している認証済みユーザーの数を表します。
id:gloomysmoker

今回の目的ではSessions Currentを取得することにしました。

ご回答ありがとうございました。

2011/10/23 02:21:35
id:monyot No.3

回答回数146ベストアンサー獲得回数18

ポイント125pt

両者の違いは、たとえば以下が参考になると思います。


要は、カウント対象となっているネットワーク的な層が異なり、セッションの方がより上位に位置します。


ただし、別の方も書いているとおり 単位時間あたりの同時接続数 として何を想定しているかによって、みるべき数値も異なってきます。


そもそも、アプリケーションレベルで「何接続」かという意味では、アプリケーション独自に計測するしかないですので、独自計測も含め、どういう目的で何を計測したいかによって、取得すべき値は異なってきます。


チューニングの観点では、両方とも監視すべきだと思います。


ざっくり何ユーザ接続できるかといった数字を知りたいのであれば、アプリケーションのつくりやネットワーク構成(フロントにロードバランサが入ってるかなど)にもよりますが、通常はセッション数の方が近いでしょう。厳密には、「ユーザの接続」という概念を明確に定義するなり、1ユーザあたり平均何セッション使用するかといった数値を別に確認しておいた上で、アプリ独自にカウントする必要があります。

id:gloomysmoker

今回の目的ではSessions Currentを取得することにしました。

ご回答ありがとうございました。

2011/10/23 02:21:28
id:kodairabase No.4

回答回数661ベストアンサー獲得回数80

ポイント125pt

Web Service\Current Connections‥‥同時に使われているsocketの数です。アプリによっては複数のsocketを消費します。


Active Server Pages\Sessions Current‥‥セッションが確立している数です。実際に接続しているアプリの数とほぼ同じと考えていいでしょう。


アクセスしてくるアプリのsocket消費量が分かっていれば、Active Server Pages\Sessions Currentだけ監視していれば十分です。

分かっていなければ(アプリが不特定なら)、両方を監視すべきです。

id:gloomysmoker

今回の目的ではSessions Currentを取得することにしました。

ご回答ありがとうございました。

2011/10/23 02:21:38

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません