Web サーバの設定

JRun では、JRun ごとに JRun Web サーバ (JWS) のインスタンスを作成し、それらを JRun 接続モジュール (JCM) にリンクします。これは、インストール時に、admin サーバの JWS インスタンスと default サーバの JWS インスタンスの 2 つが実行されていることを表します。

新しい JRun サーバを追加すると、JWS インスタンスがもう 1 つ作成されるので、この新規サーバ上で要求への対応をすぐに開始できます。ただし、ほとんどの開発環境においては、ニーズを満たすために外部 Web サーバが必要になるため、JRun ではそれらの外部 Web サーバとの接続を制御します。この接続は、JRun コネクタ ウィザードを使用して作成できます。


メモ

admin JRun サーバの接続の設定を変更することにより、JRun 管理コンソールへの アクセス方法を変更できます。変更内容については、必要に応じて後で元に戻せる ように、すべて記録しておきます。


次のセクションでは、各JRun サーバとその JWS、または外部 Web サーバの間の接続を設定する方法について説明します。

並行処理の概要

JRun と JWS または外部 Web サーバの間の接続を設定することにより、並行処理の設定が最適化されます。並行処理では、HTTP 要求をプールして分配する方式を定義します。

忘れてならないのは、「同時要求」と「同時ユーザ」は、それぞれ異なる概念であるということです。2000 個の同時要求をサポートする必要がある場合、本当は 2000 人の同時ユーザがいる状態を考えているのであって、この状態で一度に作成される要求は 100 個だけかもしれません。JRun は、各要求にスレッドを 1 つ割り当てます。

非常にボリュームの大きいインターネット サイトを実行していない限り、通常は既定の並行処理の設定を変更しないでください。JRun には、Web サーバへの接続に関する並行処理の設定値が 4 つあります。それは次の設定値です。

Web サイトで頻繁にトラフィックの負荷が急増するような環境では、最小スレッド数を多めに設定すれば、Web サイトのトラフィックの負荷が急増しても一連のスレッドを作成する必要がありません。あるいは、最小スレッド数を、同時要求について予想される安定した負荷状態にも設定できます。たとえば、常時、200 個の同時要求がある場合は、最小スレッド数を 200 に設定する必要があります。

たとえば、Web サーバの平均応答時間が RMI-CORBA データベースという 3 段階のトランザクションが原因で遅れるのであれば、新しい要求を拒否せずにスループットを維持するために、より多くの要求を受け入れるようにキューを大きくする必要があります。この場合は、最大同時要求数を予想される要求数より大きな値にします。最大同時要求数の設定値は、リソースの安全弁の役割を果たします。


メモ

JRun の既定の並行処理設定値を変更する前に、トラフィックのパターンを実際に観察 できることを確認します。不用意に設定値を変更すると、リソースを浪費する場合が あります。


並行処理の設定値は、Web サーバの編集ウィンドウで編集します。JWS や外部 Web サーバの並行処理設定値の編集については、それぞれ"JWS の設定"および"外部 Web サーバの設定"を参照してください。

JRun コネクタ ウィザードの使用

JRun コネクタ ウィザードを使用すると、Web サーバと JRun サーバの間にリンクを設定できます。この接続は、JRun 接続モジュール (JCM) の形式になります。JRun の標準インストールには、default JRun サーバを JWS に接続する JCM が 1 つ含まれています。JRun サーバに接続できる Web サーバの数に制限はありません。


メモ

多くの場合、外部 Web サーバは default JRun サーバに接続します。admin JRun サーバは固有の Web サーバを持ち、JRun インストールの管理にのみ使用され ます。default サーバには、サーブレット、JSP、および Web アプリケーションの 公開が可能です。default サーバで JRun デモ アプリケーションを実行します。


このセクションでは、JRun コネクタ ウィザードの一般的な使用手順について説明します。JRun サーバを特定の Web サーバに接続する方法については、第 2 章の次のセクションを参照してください。

JRun コネクタ ウィザードを使用するには

  1. JRun に接続する Web サーバを停止します。
  2. アクセス バーで [コネクタ ウィザード] リンクをクリックします。

    右側ペインに JRun コネクタ ウィザードが表示されます。

  3. 各手順で適切な情報を入力してから、[次へ] をクリックします。間違った場合は、[戻る] をクリックします。

    終了すると、JRun は、コネクタ ウイザードとの接続が正常に設定されたことを 通知します。

  4. Web サーバを開始します。
  5. JRun サーバを再起動します。
  6. Web サーバで SnoopServlet を要求して、接続をテストします。
    http://localhost:80/demo/index.html
    

デモ アプリケーションが実行される場合、JRun と 外部 Web サーバの接続は正常に設定されています。デモ アプリケーションが正常に実行されない場合は、"コネクタのトラブルシューティング"を参照してください。

JWS の設定

インストール処理時に、JRun によって 2 種類の JRun Web サーバ (JWS) がセットアップされます。admin JRun サーバにあらかじめ接続された Web サーバを使用して JMC 自体にアクセスする必要があるので、少なくとも最初のうちは、JWS のインスタンスが 1 つ必要です。また、JRun により JWS の 2 番目のインスタンスがインストールされ、default JRun サーバに接続されます。

JWS はメモリ使用量の少ない Java Web サーバです。JWS は実際の運用環境での使用には適していません。

ここでは、JWS の JRun 接続モジュールの設定方法について説明します。使用している JRun サーバが外部 Web サーバと接続されている場合は、"外部 Web サーバの設定"を参照して、JCM のエンドポイント プロパティを設定してください。

JWS のエンドポイント プロパティを編集するには

  1. JMC の左側ペインで、[マシン名] > [JRun サーバ名] > [JRun Web サーバ] をクリックします。

    [JRun Web サーバ] パネルが表示されます。

  2. 右側ペインで、[編集] をクリックします。

    JRun Web サーバの編集ウィンドウが表示されます。

  3. 次の表の説明に従ってフィールドを編集します。
    プロパティ
    説明
    Web サーバ
    アドレス
    JWS 上で、HTTP クライアントからの接続を受信しているソケットの IP アドレスを入力します。
    サーバが複数の IP アドレスを持っている場合は (マルチホーム)、JRun サーバが JWS 上でバインドする相手側 IP アドレスの一覧を入力します。
    既定値は * で、この JWS はサーバ IP アドレスすべてにバインドされます。
    クライアント
    IP フィルタ
    JWS が応答する IP アドレスの一覧を入力します。ここで指定されていない IP アドレスからの要求はすべて無視されます。
    既定値は * で、JWS はすべての IP アドレスからの要求に応答します。
    Web サーバ
    ポート
    TCP ポート番号を入力します。この JWS では、このポートで HTTP 要求が受信されます。
    admin JRun サーバの JWS の既定値は 8000 です。default JRun サーバの JWS の既定値は 8100 です。
    アイドル スレッドのタイムアウト
    JRun によりスレッドが破棄されるまでのアイドル状態の待機時間を秒単位で指定します。このパラメータには、JWS がビジー状態になってから何秒後に静止状態に戻るのかを指定します。スレッドが破棄されるたびに、少量のシステム リソースが解放されます。
    JRun では、同時発生する要求を処理するために、Java スレッド メカニズムを使用します。JRun では要求に対して個別に新しいスレッドを作成する代わりに、新しい要求に使用できるハンドラ スレッドのプールが維持されます。このスレッド プールは、Web サーバに対してさまざまな要求が行われるたびに、サイズが変わります。最適な状況では、トラフィック負荷と Web サーバの能力の間でプール パラメータのバランスがとれています。
    既定値は 300 秒です。
    スレッドの
    最小数
    スタート アップ時に初期プールで作成されるスレッド数を入力します。システムの稼動に従ってスレッドが作成されたり破棄されますが、ここで指定された最小値よりもプール サイズが小さくなることはありません。
    既定値は 1 です。
    アクティブ要求の最大数
    この JWS が同時に処理できるアクティブ要求の最大数を入力します。この限度を超えた要求は (同時要求の最大数まで)、スレッドがそれらの要求を処理できるまで遅延します。
    このパラメータは、JWS 上の同時発生数を制限するための JRun の主要なメカニズムです。既定値は 100 です。
    同時要求の
    最大数
    JWS が処理するか、あるいは処理のためにキューに入れる同時要求の最大個数を入力します。この最大数を超える要求はすべて破棄されます。
    既定値は 1000 です。
    JRun Web Server
    この JWS を使用する場合は、このチェック ボックスをオンにします。この JWS を使用しない場合は、チェック ボックスをオフにします。
    JRun サーバを 1 つ追加すると、JWS インスタンスが 1 つ作成され、この JRun サーバに接続されることに注意してください。リソースへの影響が最小である間は、JRun コネクタ ウイザードを使用して JRun サーバが外部 Web サーバに正しく接続されている場合に、当該 JWS をオフにできます。
    admin JRun サーバの JMC アプリケーションの場合は、JWS をオフにしないでください。
  4. [更新] をクリックして、変更を適用します。
  5. JRun サーバを再起動します。

外部 Web サーバの設定

JRun には JWS が含まれていますが、開発環境においては、JRun サーバを外部 Web サーバと接続する必要がある場合もあります。外部 Web サーバとの接続については、"JRun コネクタ ウィザードの使用"に説明がありますが、最終的には JRun サーバと外部 Web サーバ間の接続は、JRun 接続モジュール (JCM) によって管理されます。

JRun サーバ (default サーバなど) は 1 つのモジュールに接続されます。接続できる Web サーバの数に制限はありません。接続が確立されたら、このセクションでの説明に従って JCM を調整します。


メモ

外部 Web サーバの一部の設定の変更は、JRun に組み込まれている JWS では可能 ですが、JMC からは変更できません。Web サーバの文書を参照してください。


外部 Web サーバの JCM を設定するには

  1. JMC の左側ペインで、[マシン名] > [JRun サーバ名] > [外部 Web サーバ] をクリックします。

    メモ

    外部 Web サーバに JRun サーバを接続する際にコネクタ ウィザードが実行 されていないと、コネクタ ウィザードを実行するように要求されます。


    [外部 Web サーバ] パネルが表示されます。

  2. 右側ペインで、[編集] をクリックします。

    外部 Web サーバの編集ウィンドウが表示されます。

  3. 次の表の説明に従ってフィールドを編集します。
    プロパティ
    説明
    外部 Web サーバ
    アドレス
    IP アドレスを入力します (複数の場合はカンマで区切ります)。この JCM は、このアドレス一覧からの要求のみを JCM に渡します。
    既定値は * です。これにより、この JCM はすべての IP アドレスからの要求を受け入れます。
    受信アドレス
    外部 Web サーバからの接続を受信するソケットの IP アドレスを入力します。使用しているサーバに複数の IP アドレスがある場合 (マルチホーミング) には、この機能が便利です。
    既定値は * です。これにより、JRun はすべてのサーバ IP アドレスにバインドします。
    受信ポート
    外部 Web サーバからの接続を受信するためにこの JCM が使用する固有のポート番号を入力します。
    このポートと、外部 Web サーバの HTTP ポートを混同しないでください。
    アイドル スレッドの
    タイムアウト
    JRun によりスレッドが破棄される前に、待機する時間を秒単位で指定します。このパラメータでは、Web サーバがビジー状態になってから何秒後に静止状態に戻るのかを指定します。スレッドが破棄されるたびに、少量のシステム リソースが解放されます。
    JRun では、同時発生する要求を処理するために、Java スレッド メカニズムを使用します。JRun では要求に対して個別に新しいスレッドを作成する代わりに、新しい要求に使用できるハンドラ スレッドのプールが維持されます。このスレッド プールは、Web サーバに対してさまざまな要求が行われるたびに、サイズが変わります。最適な状況では、トラフィック負荷と Web サーバの能力の間でプール パラメータのバランスがとれています。
    既定値は 300 秒です。
    スレッドの最小数
    起動時に初期プールで作成されるハンドラ スレッドの数を指定します。システムの稼動に従って、スレッドが作成されたり破棄されますが、ここで指定された最小値よりもプール サイズが小さくなることはありません。
    既定値は 1 です。
    アクティブ要求の
    最大数
    JRun で同時に処理できる要求の最大数を指定します。ハンドラ スレッドで対応できるようになるまで、この制限を超える要求はすべて遅延します。このパラメータは、外部 Web サーバ上の同時発生数を制限するための JRun の主要メカニズムです。
    既定値は 100 です。
    同時要求の最大数
    Web サーバで処理できる最大要求数を入力します。この最大数を超える要求はすべて破棄されます。
    既定値は 1000 です。
    接続モジュール
    この JCM を使用する場合は、このチェック ボックスをオンにします。この JCM を使用しない場合は、チェック ボックスをオフにします。接続モジュールをオフにすると、JRun と外部 Web サーバとの接続が切断されます。そのため、ユーザが JSP ページまたはサーブレットにアクセスしようとすると、エラーが発生します。
  4. [更新] をクリックして、変更を適用します。
  5. JRun サーバを再起動します。