|
|
スタンドアロン環境と分散環境 |
サーバーの構成は、1台のサーバーのみで構成されるスタンドアロン環境と、複数のサーバーからなる分散環境の2つのパターンがあります。
※DSM Ver6.0では分散環境をサポートしていません。ご注意ください。
このときの設定ファイル(dsm.ini)は、以下のように指定します。
DSMSRV(ALONE) is ready......
スタンドアロン環境でDSMSRVを停止する場合は、「dsm.ini」の[DSMSRV]セクションのDsmHost0において以下のような指定をしてください。
DsmHost0=localhost , S
分散環境

DsmHostx=HostName , status , CurBNOMAD , MaxBNOMAD , AppIDs
コンソール用管理ツールである「dsm」で「dsm /i」とし、以下のメッセージがあるかどうか確認してください。
DSMSRV(MAIN) is ready......
DSMSRV(SUB) is ready......
例えば、メインサーバーで以下のように設定されている場合は、
App1のアプリケーションにアクセスしたときに、サブサーバー「monaco」「hongkong」へは分散されません(「localhost」、「tasmania」に分散)。
App2のアプリケーションにアクセスしたときに、サブサーバー「tasmania」「monaco」「hongkong」へは分散されません(「localhost」に分散)。
サブサーバー「hongkong」へは、App1、App2、App3、App10、App20以外のアプリケーションが分散されます。
例えば、DsmHost0が停止の場合、App1は「tasmania」で分散、App2、App3のアプリケーションは動作しません。App4(サーバーに登録されていない)のアプリケーションは、「tasmania」「monaco」「hongkong」すべてのサーバーへ分散できます。
設定ファイル(dsm.ini)の[DSMSRV]セクションのDsmHostxでのCurBNOMAD・MaxBNOMADの役割は以下のようになります。
メインサーバーに対して連続したアクセスがあるとき、
CurBNOMADの数までB/NOMADセッションが使用されると別のサーバーに処理を分散させます。
さらに、このサーバーのB/NOMADセッションの使用数がCurBNOMADの数にまで達すると、また別のサーバーに処理を分散させます。
メインサーバーで指定されているすべてのサーバー(メインサーバー・サブサーバー)で、B/NOMADセッション使用数がCurBNOMADの数まで達した場合は、各サーバーのMaxBNOMAD(DsmHostxの設定)の数までB/NOMADセッションを使用していきます。
さらにそれ以上のアクセスがあった場合は、「NOMADの起動数が最大値に達しているか使用可能なNOMADがありません。」のエラーメッセージをブラウザに返します。ただし、localhostでのMaxBNOMAD([DSMSRV]セクションのDsmHost0での指定)は、分散設定の値ではなく、[DSMCGI]セクションのMaxBNOMAD設定値が用いられます。
[DSMCGI]セクションのMaxBNOMADが未設定の場合は、デフォルトの「40」が用いられます。
[DSMSRV]セクションのlocalhostのMaxBNOMAD値は使われません。例えば、メインサーバーで以下のように設定されている場合は、
App1が連続でメインサーバーに対してアクセスした場合に、次のような流れで分散されます。「tasmania」で B/NOMAD 0〜19のセッションを使用
「monaco」で B/NOMAD 0〜14のセッションを使用
「tasmania」で B/NOMAD 20〜29のセッションを使用
「monaco」で B/NOMAD 15〜24のセッションを使用
これ以上のApp1に対するアクセスがあると「NOMADの起動数が最大値に達しているか使用可能なNOMADがありません。」のエラーメッセージを表示します。
[DSMSRV]
MainServer=ON
DsmHost0=localhost , R , 5 , 40 , App2:App3
DsmHost1=tasmania , R , 20 , 30 , App1
DsmHost2=monaco , R , 15 , 25 , App1:App10:App20
DsmHost3=hongkong , R , 15 , 35
ただし、各B/NOMADセッションで保持中のアプリケーションがTimeOutになった場合(保持から待機になる場合)は、セッションに対し再度アクセスできますので、上記の順にB/NOMADセッションを使用するとはかぎりません。

メインサーバー「tasmania」のdsm.ini
[DSMSRV]
MainServer=ON
DsmHost0=localhost , R , 10 , 20 , App1:App2
DsmHost1=hongkong , R , 15 , 25 , App10
DsmHost2=monaco , R , 20 , 40 , App1
サブサーバー「hongkong」のdsm.ini
サブサーバー「monaco」のdsm.ini
上記の設定の場合、App1のアプリケーションにアクセスした場合、「tasmania」と「monaco」に分散できます。
「hongkong」では、App10とApp1・App2以外のアクセスを許すので、App1へのアクセスは「hongkong」に分散されません。
「tasmania」へのNOMADアプリケーション(App1)の起動が、B/NOMADセッションの0〜9(CurBNOMADの値分)行われると、それ以上のアクセスは「monaco」に分散します。
「hongkong」では、NOMADアプリケーション(App1)の指定がないため、分散されません。
「monaco」はB/NOMADセッションの0〜19(CurBNOMADの値分)起動できます。
それ以上のアクセスがあった場合は、各サーバーのMaxBNOMAD値(メインサーバーのDsmHostxでの指定)まで起動できます。
連続して、App1に対してアクセスがあったとすると、以下のように各サーバーのB/NOMADセッションを使用します。
「tasmania」で B/NOMAD 0〜9のセッションを使用
「monaco」で B/NOMAD 0〜19のセッションを使用
「tasmania」で B/NOMAD 10〜19のセッションを使用
「monaco」で B/NOMAD 20〜39のセッションを使用
※「tasmania」(メインサーバー)のMaxBNOMADの値は、[DSMCGI]セクションの値が参照されます。
[DSMSRV]セクションのDsmHost0のMaxBNOMAD値は参照されません。
つまり、NOMADアプリケーションApp1を起動する場合、このシステムでは60(20+40)アクセスまで、クライアントからのアクセスを同時に処理できる、ということになります。
ただし、サーバーで立ち上がる各B/NOMADについて、各サーバー上のdsm.iniのTimeOutMinの時間(分)が経過した段階で、セッションが自動で解放されていきます。これにより、時間が経てば再びクライアント側からサーバーへのアクセスが可能となります。
分散環境のメリット