スポンサーサイト

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

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

8.x での変更 - SERVER_MAX_CONCURRENT_TRANS / SERVER_POOL_TASKS

2009年09月14日 00:29

今日はこのTechnoteからのお話をします。

(参考)Lotus Domino 8.0 以降における SERVER_MAX_CONCURRENT_TRANS および SERVER_POOL_TASKS のデフォルト値 (文書番号 732438)

この二つのパラメータを聞いてすぐ説明できる人はNotesの技術者経験が長い人でもそれほど多くないのではないかと思います。
 カスタマーサポートでもこの設定変更はサーバーの使用するリソースに直接影響するので、チューニング目的などで安易に変更することはしないように話していました。
加えてこの辺の動作はR5.x以降デフォルト値も含めて大きく変わってないので、デフォルト値のままで大きな問題が出るとも思えなかったのもあります。

このデフォルト値の計算ロジックが8.x以降大きく変わっている点について紹介されているのがこのTechnoteの内容です。ひと言で言うと今までよりScalableな設定値を使用するようにした、と言っていいのではないでしょうか。

プラットフォーム毎に動きは異なるので、詳細はTechnoteを参照して頂きたいのですが、ここでは背景的な話を含めて概要を話したいと思います。

Serverタスクはスレッドプール方式を採用していますので、複数のスレッドがユーザー要求を処理するために待ち受けていますが、あらかじめ固定した数だけスレッドプール用のタスクを起動します。
このスレッドプールの個数は、NSDを見ても分かりますが、show task debug で「Thread pool member on TCPIP」のように出ているスレッド数を数えると分かります。

Server_Pool_Tasks はこの数を調整するものです。R7.xまでのデフォルトではTCPポート毎に40(SERVER_MAX_CONCURRENT_TRANSの2倍なのでSERVER_MAX_CONCURRENT_TRANSを変えるときには注意が必要です)になっていますが、8.x以降ではここは、SERVER_MAX_CONCURRENT_TRANS と同じ数が使用されるようになりました。

SERVER_MAX_CONCURRENT_TRANS は最大同時トランザクション数です。
Dominoの世界でトランザクションと言うのは、「1つのAPIやNRPC要求による処理」に相当するものですが、この同時トランザクション数が制限されている、と言う事はこの数を越えた要求が来たらクライアント側は他の処理が終わるまで待たされる事になります。
 R7.x 以前ではSERVER_MAX_CONCURRENT_TRANSのデフォルトはServer_pool_tasksの半分だったので、40ユーザーが同時に何らかのトランザクションを実行しようとするとサーバー上の半分の要求は待たされてから実行されていました。
 元々サーバー側で過負荷を避けるためにこのように抑えた設定をしていたのですが、8.x以降にはSERVER_MAX_CONCURRENT_TRANS と Server_Pool_Tasksは同じ数が使用されるようになったので、同時トランザクションによるScalabilityは向上しているのではないかと思います。

ただし、1プロセスで200スレッド以上を超えるような設定はやはり推奨していないので、以下のような環境のお客様は一度自分の環境を確認してみるとよいのではないかと思います。

・ CPUの数が5つ以上
・ TCPポートが3つ以上ある

7.x以前をご利用のお客様でこの辺を変更して評価してみたいお客様に対しては、私は以下の設定から試してみる事をお勧めしています。

Server_Pool_Tasks=40
SERVER_MAX_CONCURRENT_TRANS=40

こうすればスレッドプール数は変わらずに、同時トランザクション数だけが増えるので比較的安全に試せるのではないかと思います。

個人的にはちょっとした技術的興味だけで変更するのは止めた方がよいと思うのですが、8.xでのデフォルト値変更を機に、スレッドプールを増やした環境は増えてくるので少し動向を見守っていきたいと思っています。
また、8.xや8.5にバージョンアップをされるお客様もこの変更がされる事を頭に入れておいて頂けると何かの役に立つのではないかと思います。





コメント

    コメントの投稿

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

    トラックバック

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


    最新記事


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