2011-07-20 8 views
0

server Aにフィードバックフォームがあります。トラフィックが多いため、フィードバックのカテゴリ(投稿フォームのフィールド)に基づいて、これらのPOSTリクエストの一部を別のserver Bにリダイレクトしたいと考えています。投稿フォームのデータは、投稿変数に応じて別のサーバにリダイレクトされます

問題はフィードバックフォームが複数のモバイルアプリケーションに分散され、ハードコードされていることです。フォームの投稿では何も変更できません。

最良のアプローチは何ですか? DNSリダイレクトを使用することは可能ですか?リクエストがApacheサーバーに到達して負荷が増加する前に、リダイレクトが発生するのが理想的です。提案してください。

答えて

0

理想的には、フォームを変更する必要があります(実際のフォーム自体ではなく、サポートコード)。アイデアは、フォームを送信する際に、「カテゴリ」フィールドをチェックし、フォームの「アクション」属性の値を変更して所望のサーバーに送信するJavaScriptを追加することです。

何らかの理由でそれができない場合、はサーバー側でに実装されている可能性があります。直接Server Aを押すのではなく、Server Zeroをロードする必要があります。ロードバランサは、提供するロジックに基づいてリクエストをさらにルーティングできます。 1)使用頻度の低いサーバーを選択します。 2)ランダムにサーバーを選択する。 3)POSTフォームデータを分析し、適切なサーバーを選択する。 4)その他のオプション。 #2はDNS経由で実装できます(例は下のリンクから入手できます)。

任意のロードバランサがオプション1 &を実装できる必要があります。2.その他のオプションについては、特定のロードバランサ(ソフトウェアまたはハードウェア)がサポートしているかどうかを確認する必要があります(機能リストを確認してください)。

リンク:

+0

あなたの#3のオプションをサポートしている任意のロードバランサを提案することはできますか? –

1

307 HTTP応答を返すことができます。これは、クライアントにすべてのデータを再ポストしながら他の場所にリダイレクトするように指示します。これは、大量のデータ(ファイル)の場合には不利になる可能性がありますが、他のサーバーにデータを送信することもできます。それに加えて、最初のサーバーはデータを受け取るので、処理自体が比較的コストがかかる場合にのみ、このソリューションを利用できます。

ロードバランサを使用すると、データを送信するサーバーを決定することができます。

関連する問題