MGREQ.INI

分散アプリケーション > Magicのリクエスタ

Magic クライアント、インターネットリクエスタ、コマンドラインリクエスタなどの、リクエスタインタフェースに対する設定は、MGREQ.INIファイルにて行います。このファイルは、リクエスタモジュールおよび、汎用メッセージモジュール(MGrqgnrc10x.dll)が存在するディレクトリ内に存在する必要があります。

MGREQ.INIファイルは、リクエスタの初期化時に読み込まれます。

注意:

MGREQ.INIファイルは、MRBでも使用されます。MRBの低レベルの動作(接続、送信、受信)を追跡する場合に使用する必要があります。

MGREQ.INIファイルは、Magicのパーティショニング機能に関わる全てのモジュール(リクエスタ、アプリケーションサーバ、MRB)で使用されます。これらの3つのモジュールが起動する際、それぞれMGREQ.INIファイルを検索します。

MGREQ.INIファイルには、次のパラメータを定義します。

キーワード

説明

[REQUESTER_ENV]セクション

Gateway

リクエスタが使用するミドルウェア。

  • Gateway = 1 … MRBを使用します。

  • Gateway = 5 … J2EEを使用します。

 

構文:Gateway = n(デフォルト:1 (MRB))

MessagingServer

リクエストを受信するミドルウェアアドレス。

 

構文:MessagingServer = ノード名/ポート番号

AltMessagingServer

代替となる同じ種類の別のミドルウェアのアドレス。

メインメッセージサーバへの接続がエラーになった場合、リクエスタはこのアドレスを参照します。

 

構文:AltMessagingServer = ノード名/ポート番号

BrokerTimeout

リクエストがMRB に送られた後、MRB から使用可能なエンジンを割当てることができたことが報告されるまで待機する時のタイムアウト時間(単位:秒)です。この時間内に使用可能なエンジンが見つからなかった場合、MRB から次のいずれかのエラーコードが返されます。

  • APP-NOT-FOUND …このエラーコードは、MRB の内部データベースにアプリケーションが定義されていないことを示します。

  • APP-IN-USE…アプリケーションは定義されているものの、エンジンが使用中であることを示します。

この値を0 に設定した場合、MRB からエンジンに関する情報は返されません。

 

構文:BrokerTimeout = n (デフォルト:10秒)

KeepAlive

MGrqgnrc10x.dll が接続のためのリクエスタオプションを設定したり、接続監視間隔を制御するためにOSレベルでの設定を行う場合に使用します。

この設定は、OSの設定が使用される時のみ有効です。システム管理者は、OSの設定間隔を指定しなければなりません。

注意:

日本語版では現在サポートされていません。

 

 

構文:KeepAlive = Y or N (デフォルト:Y)        

RequesterTimeout

タスクが完了するまでのMRB が待機するタイムアウト時間(単位:秒)で、この時間が経過するとタイムアウトになります。

この値を0 に設定した場合、タスク完了のメッセージは、MRB には送られません。

 

構文:RequesterTimeout = n

CommTimeout

TCP/IP操作(接続/送信/受信)が、失敗する前にリトライする最大時間(単位:秒)です。

MRBによって送信されたメッセージに対してMGRB.INIファイル内のこの設定はMGREQ.INIファイル内の設定を上書きします。「通信タイムアウト」のトピックを参照してください。

汎用のリクエスタレイヤーの低レベルのメッセージは、MGREQ.INIファイルの設定が使用されます。

デフォルトは10秒です。最小値は1秒です。

 

構文:CommTimeout = n

Priority

オプションで省略できます。リクエストのデフォルトの優先順位で、キューに優先順位が割当てられていない時に、この優先順位の値が使用されます。0 が最低、9 が最大です。この優先順位は、MRB でのみ有効です。

 

構文:Priority =n

Username, Password

オプションで省略できます。アプリケーションに対するデフォルトのユーザ名とパスワードを指定することができます。リクエストにユーザ名とパスワードが含まれていなかった場合、このデフォルトのユーザ名とパスワードが使用されます。

 

構文:

Username =ユーザ名

Password =パスワード

DefPath, DefName

オプションで省略できます。デフォルトのディレクトリとファイル名です。リクエストのFILENAME パラメータにパス名およびファイル名が指定されていない場合、このディレクトリとファイル名が使用されます。

 

構文:

DefPath =ディレクトリ名

DefName =ファイル名

DefHtml

オプションで省略できます。デフォルトのHTML ファイル名です。呼び出されたプログラムからHTMLデータが返らなかった場合やエラーが発生した場合、インターネットリクエスタによって、このファイルが検索され表示されます。

 

 

 

 

 

構文:DefHtml=ファイル名

Http Vars

HTTP プロトコル上で使用される環境変数の名前を指定することで、その変数がHTTPサーバからMagic プログラムに送られます。プログラム内でGetParam 関数を使用することでこの変数の値を取得することができます。ISAPI 、CGI の各リクエスタで使用されます。

注意:

MG_POST_BODYを変数として指定した場合、MagicサーバにBLOB形式でボディー全体を渡します。GetParam('MG_POST_BODY')を使用することで変数項目を使用すること無くアクセスできます。リクエスタは、ボディー(アプリケーション名や他のパラメータ)から情報を取得し、エンジンに対しては渡しません。

 

 

構文:HttpVars=変数名1,変数名2,...

HttpSigVars

コンテキストを保持するように定義したバッチプログラム(マージWebプログラム)を、コンテキストIDを指定したリクエストで実行する場合に関係します。

クライアントの識別情報を持たずに実行されたコンテキストは、どのユーザからでもコンテキストIDが合っていれば処理されてしまいます。

この問題を避ける必要がある場合、クライアントを識別するための認証情報をここで指定します。以下のHTTP環境変数を指定することでコンテキストを作成したクライアントと異なるクライアントからリクエストを送られた場合、コンテキストIDが合っていてもエラーを返して拒否するようになります。

  • REMOTE_ADDR…クライアント側のIPアドレス

  • REMOTE_HOST…クライアント側のホスト名

  • REMOTE_USER…クライアント側のユーザ名

  • HTTPS, SSL_CLIENT_KEY_SIZE…SSL関連情報

  • HTTP_COOKIE …ユーザ定義Cookie項目

Appl

許可されているアプリケーションの名前で、複数指定する場合、カンマで区切ります。アプリケーションを指定しなかった場合、全てのアプリケーションが使用できます。

 

構文:Appl=アプリケーション1,アプリケーション2, ...

AutoLoopBack

パーティショニングモジュール(MRBやアプリケーションサーバ)が同一PC上にある場合、ネットワークが切断された時に問題が発生する場合があります。

例えば、ネットワークケーブルが外れた場合、WIndows はネットワーク上に接続されているPCの接続を全てアボートします。このフラグを使用することでこのような問題を防止することができます。

このフラグが指定された場合、DHCPを使用してホスト名の名前解決を行う代わりに、MagicはLocalhost(127.0.0.1)を使用します。この結果として、ネットワーク接続が失われても、モジュールの間の接続はそのまま維持されます。

 

構文:AutoLoopBack=Y (デフォルト:Y)

SpecialAffinity

MRBを実行しているサーバがマルチCPU(または、ハイパースレディング)で動作している場合、1つのCPUで動作するように指定します。

 

構文:SpecialAffinity = Y or N (デフォルト:N)

MaxUploadKB

インターネットリクエスタを通してアップロードするファイルサイズの上限を指定します。

 

構文:MaxUploadKB=nnnn (単位 KByte)

 

上限を超えるとエラー260が返ります。

 エラーメッセージは、

 "File upload failed: file size exceeds maximum size limitation."

  パラメータが設定されていないか、0 の場合、制限がかかりません。この場合は、ネットワークまたはアプリケーションサーバ上に負荷をかける場合があります。

Handles

MRB やアプリケーションサーバ、リクエスタによってオープンできるソケットの最大数を指定します。

デフォルト:500

注意:

日本語版では現在サポートされていません。

 

RetryMainTime

リクエスタがその主要なMRBに再接続する前に待機する最小時間(分)を指定します。この設定は、ISAPIとApache用のリクエスタのみ有効です。

デフォルトは5、最小値は1です。

注意:

日本語版では現在サポートされていません。

 

SpecialAffinity

 

マルチプロセッサを使用しているPCに対して、1つのCPU(スレッド)のみ使用するように現在のプロセス(例:MRBやアプリケーションサーバ)に強制する場合に使用します。

 

構文:SpecialAffinity = Y/N (デフォルト:N)

Filter

リクエストに追加するフィルタ用のキーワードを指定します。

 

構文:Filter = < キーワード>

 

コマンドラインリクエスタやインターネットリクエスタからキーワードを送る場合に指定します。(リモートコールの場合は、MAGIC.INI で指定されたキーワードが送られます。)

MRBのFilterの説明を参照してください。

LocalHost

このキーワードは、ポート番号を持っているアドレスにアクセスする場合に、ホスト名を強制的に使用させることができます。デフォルトでは、現在のホスト名が使用されます。

 

構文:LocalHost = text

CloseWaitTimeout

準切断状態(例:クライアントによって接続を閉じられた状態)の接続を閉じる方法を指定することができます。

シャットダウンしたMRB やMagic エンジンと以前に接続されていて、再起動後に同じアドレスで再接続する場合、接続を開始するモジュールは、シャットダウンされておらず、準切断状態として接続が存在しています。

このキーワードを使用することで、次のリクエストを受信した時や、指定した時間が経過した時に、接続を自動的に閉じるようにできます。

注意:

MRB やMagic エンジンを止めることはできますが、HTTP サーバを停止させることはできません。

 

 

構文:CloseWaitTimeout = 数値(デフォルト:-1)

 

以下のキーワードを指定できます。

  • 継続分数…全ての準切断状態の定期的な終了処理期間
    例えば、「5」と指定した場合、Magic エンジンは、5 分ごとに準切断状態を閉じます。更に、リクエストが送られてきた時点でも閉じます。

  • -1…定期的に閉じることはありません。準切断状態は、リクエストが送られてきた時点でのみ閉じます。

  • 0…準切断状態は、決して閉じることはありません。

ConvertAlphaFromUTF8ToUnicode

インターネットリクエスタで受け付けるリクエスト(GETおよびPOST)のパラメータの文字コードを指定します。

 

構文:ConvertAlphaFromUTF8ToUnicode = Y/N(デフォルト:N)

 

以下のキーワードを指定できます。

  • N…リクエストの文字コードは Shift-JIS として処理されます。

  • Y…リクエストの文字コードは UTF8 として処理されますが、もし UTF8 としての解釈に失敗したら、Shift-JISであるとして処理します。

Log

低レベルのリクエスタの動作を記録するログファイルを指定します。

 

構文:LOG=ファイル名  同期  レベル

 

ファイル名……ログファイル名を指定します。ファイル名に空白を含むことはできません。

同期:  

  • Y……ログファイルは、行ごとに開閉されます。これにより、コンポーネントがメモリ内にロードされている時にも、ファイルを削除できます。複数のモジュールでログファイルを共有することも可能です。  

  • N……ログファイルは、コンポーネントの初期化と終了の時のみに開閉されます。

レベル:

  • C……ユーザレベル(概要ログ)

  • S……サポートレベル(中間ログ)

  • D……MSE社の開発者向けレベル(詳細ログ)

[MAGIC_MESSAGING_GATEWAYS]

 

ロードする必要のあるモジュールのゲートウェイを指定します。

各リクエスタが処理できるミドルウェアタイプは1つのみです。必要なミドルウェアモジュールをロードするには、ミドルウェアゲートウェイエントリのマークを外します。

 

構文:MGSRVR##=DLL,レベル,ファイル名,同期 ,パラメータ

 

##:ミドルウェアタイプの番号

  • 05……J2EE

レベル:

  • C……ユーザレベル(概要ログ)。

  • S……サポートレベル(中間ログ)。

  • D……開発レベル(詳細ログ)。

ファイル名:ログファイルの名前

同期:  

  • Y……ログファイルは、行ごとに開閉されます。これにより、コンポーネントがメモリ内にロードされている時にも、ファイルを削除できます。複数のモジュールでログファイルを共有することも可能です。  

  • N……ログファイルは、コンポーネントの初期化と終了の時のみに開閉されます。

パラメータ: ミドルウェアに渡す必要があるパラメータ。MRBを使用している場合、この設定は不要。

SNMPに関する設定については、ここを参照してください。