0

ロードバランサーの背後に n 台のサーバーがあります。http リクエストが着信すると、ラウンド ロビン方式でいずれかのサーバーにルーティングされます。私の質問は、http 応答 (要求が送信されるサーバー) でサーバー情報を送信できる方法はありますか?

4

1 に答える 1

0

必要な情報 (IP アドレス? サーバーのフレンドリ名?) があれば、response.setHeader("Backend-Machine", "ServerName") を使用して簡単にヘッダーを設定できます。

問題は、その情報をどのように入手するかです。ほとんどのサーバーには複数の NIC があります。つまり、ランダムに 1 つを選択して IP アドレスを返すことはできません (127.0.0.1 を取得する可能性があり、誰の役にも立ちません)。これが重要な場合は、サーバーを識別すると思われる文字列を含む JVM の起動時にシステム プロパティを設定することをお勧めします。次に、その文字列をすべての応答に追加するだけのフィルターを作成します。

于 2012-05-21T22:06:00.833 に答える