アプリサーバー設定
目次
Rack/Rails デフォルト設定
Python WSGIデフォルト設定
Node.jsアプリデフォルト設定
実行時モード
説明
アプリケーションを実行するモードを指定します。"Development"、"Production"、または"Staging"を選択できます。 デフォルトは"Production"です。
構文
ドロップダウンリストから選択
最大接続数
説明
サーバーと外部アプリケーションの間で確立できる同時接続の最大数を指定します。 この設定は、外部アプリケーションによって同時に処理できる要求の数を制御しますが、実際の制限は外部アプリケーション自体によっても異なります。 この値を高く設定すると、外部アプリケーションの速度が不十分であるか、多数の同時要求に対応できない場合に役立ちません。
構文
整数
ヒント
[パフォーマンス]高い値を設定しても、高いパフォーマンスに直接変換されるわけではありません。 制限を外部アプリケーションに負荷をかけない値に設定すると、最高のパフォーマンス/スループットが得られます。
初期リクエストタイムアウト(秒)
説明
新しく確立された接続で、外部アプリケーションが最初のリクエストに応答するまでサーバーが待機する最大秒数を指定します。 このタイムアウト内に外部アプリケーションからデータを受信しない場合、サーバーはこの接続を不良としてマークします。 これにより、外部アプリケーションとの通信問題をできるだけ早く特定できます。 処理に時間がかかるリクエストがある場合は、503エラーメッセージを避けるためにこの制限を増やしてください。
構文
整数
接続キープアライブタイムアウト
説明
アイドル状態の永続接続を開いたままにする最大秒数を指定します。
"-1"に設定すると、接続はタイムアウトしません。0以上に設定すると、この秒数が経過した後に接続が閉じられます。
構文
整数
レスポンスバッファリング
説明
外部アプリケーションから受信したレスポンスをバッファリングするかどうかを指定します。 "nph-"(Non-Parsed-Header)スクリプトが検出された場合、完全なHTTPヘッダーを持つレスポンスではバッファリングがオフになります。
構文
ドロップダウンリストから選択
最大アイドル時間
説明
外部アプリケーションがサーバーによって停止され、アイドルリソースが解放されるまでの最大アイドル時間を指定します。 "-1"に設定すると、ProcessGroupモードで実行されている場合を除き、外部アプリケーションはサーバーによって停止されません。 ProcessGroupモードでは、アイドル状態の外部アプリケーションは30秒後に停止されます。
デフォルト値:-1
構文
整数
ヒント
[パフォーマンス] この機能は大量ホスティング環境で特に便利です。 あるバーチャルホストが所有するファイルに、別のバーチャルホストの外部アプリケーションスクリプトからアクセスされるのを防ぐため、 SetUIDモードで多数の異なるアプリケーションを同時に実行する必要があります。 これらの外部アプリケーションが不要にアイドル状態のままにならないよう、この値を低く設定してください。
バックログ
説明
リスニングソケットのバックログを指定します。 自動スタートが有効な場合は必須です。
構文
整数
起動時に実行
説明
サーバー起動時に外部アプリケーションを起動するかどうかを指定します。 自身の子プロセスを管理でき、インスタンスの値が"1"に設定されている外部アプリケーションにのみ適用されます。
有効にすると、外部プロセスは実行時ではなくサーバー起動時に作成されます。
"Yes (Detached mode)"を選択した場合、デタッチされたすべてのプロセスは、サーバーレベルでは$SERVER_ROOT/admin/tmp/配下、 バーチャルホストレベルでは$VH_ROOT/配下の'.lsphp_restart.txt'ファイルにtouchすることで再起動できます。
デフォルト値:Yes (Detached mode)
構文
ラジオボックスから選択
ヒント
[パフォーマンス] Railsアプリのように、設定された外部プロセスの起動オーバーヘッドが大きい場合は、 このオプションを有効にすると最初のページ応答時間を短縮できます。
優先度
説明
外部アプリケーションプロセスの優先度を指定します。値の範囲は-20から20です。 数字が小さいほど優先度は高くなります。外部アプリケーションプロセスはWebサーバーより高い優先度を持つことはできません。 この優先度がサーバーより小さい数値に設定されている場合、この値にはサーバーの優先度が使用されます。
構文
整数
参照
Server プライオリティ
メモリソフトリミット(バイト)
説明
外部アプリケーション・プロセスまたはサーバーによって開始された外部アプリケーションのメモリー消費制限をバイト単位で指定します。
この制限の主な目的は、ソフトウェアのバグや意図的な攻撃のために過度のメモリ使用を防止し、通常の使用に制限を設けないことです。 十分なヘッドスペースを確保してください。そうしないと、アプリケーションが失敗し、503エラーが返される可能性があります。 サーバーレベルまたは個々の外部アプリケーションレベルで設定できます。 サーバーレベルの制限は、個々のアプリケーションレベルで設定されていない場合に使用されます。
オペレーティングシステムのデフォルト設定は、値が両方のレベルにないか、0に設定されている場合に使用されます。
構文
整数
ヒント
[注意]この制限を過度に調整しないでください。 アプリケーションでより多くのメモリが必要な場合は、503のエラーが発生する可能性があります。
メモリハードリミット
説明
ソフトリミットをユーザープロセス内のハードリミットまで上げることができることを除けば、メモリソフトリミット(バイト)と同じくらい同じです。 ハード・リミットは、サーバー・レベルまたは個々の外部アプリケーション・レベルで設定できます。 サーバーレベルの制限は、個々のアプリケーションレベルで設定されていない場合に使用されます。
値が両方のレベルにないか、0に設定されている場合、オペレーティングシステムのデフォルトが使用されます。
構文
整数
ヒント
[注意]この制限を過度に調整しないでください。アプリケーションがより多くのメモリを必要とする場合、503エラーが発生する可能性があります。
プロセスソフトリミット
説明
ユーザーに代わって作成できるプロセスの総数を制限します。 既存のすべてのプロセスは、開始される新しいプロセスだけでなく、この限度に対してカウントされます。 制限は、サーバーレベルまたは個々の外部アプリケーションレベルで設定できます。
サーバーレベルの制限は、個々のアプリケーションレベルで設定されていない場合に使用されます。 この値が0または両方のレベルにない場合、オペレーティングシステムのデフォルト設定が使用されます。
構文
整数
ヒント
Information PHPスクリプトはプロセスをフォークするために呼び出すことができます。 この制限の主な目的は、フォーク爆弾や他のプロセスを作成するPHPプロセスによって引き起こされる他の攻撃を防ぐための最終防衛線です。
この設定を低すぎると、機能が著しく損なわれる可能性があります。 この設定は特定のレベル以下では無視されます。
suEXECデーモンモードを使用する場合、親プロセスが制限されないように、実際のプロセス制限はこの設定よりも高くなります。
プロセスハードリミット
説明
ソフトリミットをユーザープロセス内のハードリミットまで上げることができることを除けば、プロセスソフトリミットとほとんど同じです。 ハードリミットは、サーバー・レベルまたは個々の外部アプリケーションレベルで設定できます。 サーバーレベルの制限は、個々のアプリケーションレベルで設定されていない場合に使用されます。 オペレーティングシステムのデフォルト値は、値が両方のレベルにないか、0に設定されている場合に使用されます。
構文
整数