ランタイム・パラメータ

tmbootによって起動したサーバーは、ランタイム・パラメータを使用します。すでに説明したとおり、tmbootは、サーバーの起動時にMACHINESセクションに対してTUXDIRAPPDIR、およびENVFILEの各パラメータの値を使用します。さらに、サーバーのPATHを次の値に設定します。

     “APPDIR:TUXDIR/bin:/bin:path

pathは、ENVFILEファイルの最後の行(PATH=)に指定されている値です。次のパラメータはランタイム・パラメータです。

ENVFILE=string_value 

ENVFILEパラメータを使用して、サーバーの初期化時に、tmbootによって作成された環境に対して値を追加することができます。tmbootMACHINES ENVFILEで変数を指定した後、オプションとして、SERVERS ENVFILEパラメータで指定されたファイルの変数を設定することもできます。これらのファイルを使用してTUXDIR、APDIR、TUXCONFIG、またはTUSOFFSETをオーバーライドすることはできません。最良のポリシーは、アプリケーションを正しく実行するために必要な変数だけをサーバーのENVFILEに設定しておくことです。

サーバー側では、サーバーの起動後ENVFILEファイルが処理されます。したがって、サーバーの実行に必要な実行可能ファイルまたは動的にロードされたファイルを検索するためのパス名を、このファイルに設定することはできません。これらのタスクを実行する必要がある場合は、かわりにマシンのENVFILEを使用してください。

ENVFILE内では、VARIABLE =stringという形式の行のみが許可されます。VARIABLEは、アンダースコアまたはアルファベット文字で開始する必要があり、アンダースコアと英数字だけで構成することもできます。サーバーが、別のマシンに移行可能なサーバー・グループに関連付けられている場合、ENVFILEは両方のマシンで同じ場所に存在しなければなりません。

CONV={Y | N}

CONVは、サーバーが会話型サーバーであるかどうかを指定します。会話型サーバーが定義されている場合、CONVの値はYになります。接続は会話型サーバーに対してのみ行うことができます。受け取ったリクエストに対してレスポンスを行うサーバーの場合は、CONV=N (デフォルト)を設定するか、またはパラメータを省略します。

RQADDR=string_value 

RQADDRは、このサーバーのリクエスト・キューにシンボリック名を割り当てます。複数のサーバーに対して同じシンボリック名を使用し、MSSQセットを作成します(1より大きいMINの値を指定)。MSSQセットに属するすべてのメンバーは、同じサービスのセットを提供し、同じサーバー・グループに属していなければなりません。

RQADDRを指定しないと、このサーバーのキュー・アドレスとなる一意のキーが割り当てられます。ただし、キューにシンボリック名が設定されている場合は、キュー・アドレスを引数として使用するtmadminコマンドを使用する方が簡単です。

RQPERM =number 

このサーバーのリクエスト・キューにUNIX形式で許可を割り当てる場合は、RQPERMパラメータを使用してください。numberには、0001 - 0777の範囲の値を指定します。パラメータが何も指定されていない場合は、掲示板に設定された許可の値(RESOURCESセクションのPERMで指定)が使用されます。そこでもパーミッションが設定されていない場合は、デフォルトの0666が指定されます。ただし、この値が設定された状態では、システムにログインしたユーザーであれば誰でもアプリケーションを使用できるため、注意が必要です。

REPLYQ={ Y | N }

REPLYQパラメータは、応答キュー(リクエスト・キューとは別)をAOUTに対して作成する必要があるかどうかを指定します。Nが指定されると、AOUTと同じLMIDに応答キューが作成されます。リクエスト・キューを使用するサーバーが1つの場合、リクエスト・キューから応答を取り出す操作は問題なく行われます。しかし、サーバーがMSSQセットのメンバーであり、応答メッセージを受信するようにプログラミングされているサービスを含んでいる場合、REPLYQYに設定して、このサーバーに対して応答キューが個別に作成されるようにする必要があります。Nに設定されると、応答はMSSQセット内の全サーバーが共有するリクエスト・キューに送信されてしまい、応答がリクエスト元のサーバーに返されるかどうかは保証されません。

応答を必ず受信するには、常にMSSQセット内の全サーバーにREPLYQ=Yを設定するべきです。MSSQセット内のサーバーでは、同じサービスが提供されなければなりません。つまり、セット内のあるサーバーが応答を待機している場合は、セット内のほかのサーバーでも応答を待機できます。

RPPERM=number 

応答キューに許可を割り当てるには、RPPERMパラメータを使用してください。 number は、通常のUNIX形式(たとえば、0600)で指定されます。指定できる値は、0001 - 0777までの値です。RPPERMを指定しない場合は、デフォルトで0666が指定されます。このパラメータは、REPLYQ=Yの場合のみ有効です。リクエストと応答が同じキューから読み出される場合、必要なのはRQPERMのみで、RPPERMは無視されます。

RESTART={ Y | N }

RESTARTパラメータは、AOUTを再起動できるかどうかを示し、YまたはN を指定できます。デフォルトはNです。移行可能なサーバー・グループにサーバーが属している場合、RESTARTにはYを指定しなければなりません。SIGTERMシグナルを指定して起動したサーバーは再起動できません。このサーバーはリブートする必要があります。

サーバーの再起動に関するポリシーは、サーバーの状態、つまりサーバーが開発中であるかどうかによって異なります。アプリケーションがテスト過程の段階では、サーバーに繰り返し障害が発生することも考えられます。しかし、アプリケーションが本番段階に進んだら、サーバーは、ほとんど障害が発生しない状態でなければなりません。アプリケーションが本番段階に進んだら、サーバーの再起動に関してさらに厳しい条件のパラメータを設定することもできます。