Web サーバー・プラグイン
Web サーバー・プラグインは、 Web サーバーで動的コンテンツ (サーブレットなど) の要求をアプリケーション・サーバーに送信できるようにします。Web サーバー・プラグインは、各 Web サーバー定義と関連付けられています。 各プラグインに対して生成される構成ファイル (plugin-cfg.xml) は、 関連付けられている Web サーバーを介して経路指定されるアプリケーションを基にしています。
- XML ベースの構成ファイルである
- ファイアウォール製品が認識する標準プロトコルである
- HTTPS を使用するセキュリティーであり、 独自仕様のオープン・サーブレット・エンジン (OSE) を Secure Sockets Layer (SSL) に置き換える
サポートされている Web サーバーのプラグインはそれぞれ、各種のオペレーティング・システム上で動作します。 サポートされている Web サーバーに関する最新情報については、製品の Supported Hardware and Software を参照してください。

アフィニティー要求
アフィニティー要求とは、JSESSIONID を含む要求のことです。セッション・アフィニティーとは、 同じ JSESSIONID の要求はすべて同じアプリケーション・サーバーに送信されることをいいます。 例えば、初期要求が clone5 に送信された場合、plugin-cfg.xml ファイル内の LoadBalanceWeight プロパティーで指定されたウェイト値にかかわらず、同じブラウザーからの次のアフィニティー要求も clone5 に送信されます。
Web サーバー・プラグインの要求ルーティング・プロパティーのロード・バランシング・オプションにラウンドロビン (Round robin) を選択して、plugin-cfg.xml ファイルの IgnoreAffinityRequests プロパティーをデフォルト値の true のままにした場合、アフィニティー要求はウェイトを下げません。この動作により、セッション・アフィニティーを使用する環境にあるサーバー間で要求が均等に分散されなくなる可能性があります。IgnoreAffinityRequests プロパティーを false に設定すると、アフィニティー要求を受信するたびにウェイトが下がり、よりバランスの取れたラウンドロビン環境となります。
「ロード・バランシング・オプション (Load balancing option)」プロパティーで「ランダム (Random)」を選択した場合、アフィニティー要求はまだ同じクローン ID に 送信されますが、新規の要求はランダムにルーティングされ、LoadBalanceWeight プロパティーに指定されている値は無視されます。
フェイルオーバー
要求接続が plugin-cfg.xml ファイル内の ConnectTimeout プロパティーに指定されている制限時間を超えた場合、またはアプリケーション・サーバーから 5xx エラーが返された場合、Web サーバー・プラグインは、そのサーバーにダウンしていることを示すマークを付け、plugin-cfg.xml ファイル内の PrimaryServers プロパティーに指定されている 1 次サーバーのリスト内の次のアプリケーション・サーバーに接続しようとします。Web サーバー・プラグインが別のアプリケーション・サーバーに正常に接続されると、ダウンしているアプリケーション・サーバーに対して保留されていたすべての要求が、その別のアプリケーション・サーバーに送信されます。その他のすべての新規要求およびアフィニティー要求は、Web サーバー・プラグインの要求ルーティング・プロパティーのロード・バランシング・オプション設定がラウンドロビンかランダムかに基づいて、別のサーバーに送信されます。
要求または応答において、plugin-cfg.xml ファイル内の ServerIOTimeout プロパティーに指定されている制限時間を初めて超えた場合、通常、フェイルオーバーは起きません。代わりに、Web サーバー・プラグインは、新しいストリームを使用して、同じアプリケーション・サーバーに要求を再送信しようとします。ServerIOTimeout プロパティーで指定されている制限時間を再度超えた場合、Web サーバー・プラグインは、そのサーバーに使用不可であることを示すマークを付け、フェイルオーバー・プロセスを開始します。

Web サーバーの複数の子プロセスの実行
- Web サーバー・プラグインの複数の実行インスタンスは、情報を共有できません。そのため、各アプリケーション・サーバーのロード・バランスのウェイトが動的に変更されても、その変更は Web サーバー・プラグインのインスタンス間で共有されません。例えば、Web サーバー・プラグインのあるインスタンスでは、アプリケーション・サーバーをウェイト 5 で 実行されているものとみなし、Web サーバー・プラグインの別のインスタンスでは、その同じアプリケーション・サーバーをダウン状態で使用できないものとみなす可能性があります。このパースペクティブの違いにより、要求を処理する Web サーバー・プラグインに応じて、着信要求の処理方法が異なる可能性があります。
- Web サーバー・プラグイン設定は、インスタンス・ベースで処理されます。例えば、MaxConnections プロパティーは、その Web サーバー上の各 Web サーバー・プラグイン・インスタンスに対して許可される保留要求の数を指定します。MaxConnections プロパティー が 20 に設定されている場合に Web サーバーの子プロセスを 3 つ開始すると、 Web サーバー・プラグインの 3 つの各インスタンスが同じアプリケーション・サーバーに対して 20 の 保留接続を許可するため、保留接続が最大 60 までになる可能性があります。