Web アプリケーションにApplication Request Routing を使用して HTTP 負荷分散を実装しました。1 つのロード バランサー サーバーと 2 つのアプリケーション サーバー、つまり SERVER1 と SERVER2 があります。ロード バランサ サーバーのサーバー ファームでクライアント アフィニティを構成しました。
しかし問題は、同じクライアントからのリクエストが異なるサーバーに送信されることです。この動作は、サーバー ファームの [監視と管理] セクションで確認しました。また、クライアントで「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが発生します。
これは、クライアントからの最初の要求が SERVER1 にヒットしたときに、SERVER1 のセッションでオブジェクトが作成されたためです。セッションで作成されたオブジェクトにアクセスしようとしている同じクライアントからの 2 番目の要求。しかし、リクエストは SERVER1 ではなくロード バランサーから SERVER2 にヒットしています。SERVER2 クライアントにセッションが存在しないため、このエラーが発生します。
クライアント アフィニティ構成は、クライアントからの後続のすべての要求が、最初の要求を処理した同じサーバーに送信されるというこの問題を処理するためのもので あることを理解しています。
しかし、私の場合、この機能は機能していません。これに対する解決策は非常に役立ちます。