スポンサーサイト

--年--月--日 --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

HTTP アクティブスレッド数

2009年02月27日 00:15

バッファプールの話を書いてたらこの話も浮かんできたので。。

(参考)Lotus Domino HTTP アクティブスレッド数の推奨 (#731489)

HTTPのアクティブスレッド数は最大でも80程度で、と言う内容の文書なのですが、バッファプールの話と比べるとこちらはもう少し話が複雑に思えます。

HTTPアクティブスレッド数の上限を少なくするのもやはりパフォーマンス上デメリットがあるから、と言うよりこれより大きな値を設定するとリスクが大きくなる、と言う意味合いも大きいのではないかと思っています。
 スレッド数を増やすと、Process Heapの使用量は増えてしまうのでノーツの文書情報のようなプロセス間で共有される可能性のある情報がヒープを圧迫してしまったりする恐れがあるのです。なのでうちの環境では増やしたほうがパフォーマンスがよかった、と言う声も度々聞かれるのですがやはり問い合わせでは大きな値は可能な限り、戻してもらう事を検討して頂けないかをお願いさせて頂いたりしています。

比較的処理時間の長い WebQueryOpen/WebQuerySave エージェントが、頻繁に実行されるようなケースではアクティブスレッド数は意外と足りなくなりやすいのですが、そのようなケースでもアクティブスレッド数を増やすよりは、別のサーバーに振り分けるようなことを考えたほうがよいのではないかと思います。逆にあまり計算が走らないようなWebアプリでは80スレッドでもかなりの同時ユーザー数をカバーできたりします。


Technoteでは、パフォーマンスの評価をする際にも、単純に消費されたスレッド数だけでなく、リクエストの平均処理時間などを考慮したうえで決める、と言った原理的な話も出てくるので是非ご一読頂ければと思います。


コメント

    コメントの投稿

    (コメント編集・削除に必要)
    (管理者にだけ表示を許可する)

    トラックバック

    この記事のトラックバックURL
    http://hnagasim.blog8.fc2.com/tb.php/97-d5dbc6db
    この記事へのトラックバック


    最新記事


    上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。