-2

負荷分散サーバーについて知りたいです。

負荷分散されたサーバーを持つアプリケーションを使用しています。データに変更を加えたとき、アプリケーションでどのように有効になっていますか? また、アプリケーションを再起動すると、負荷分散されたサーバーに対して行われるすべての手順は何ですか?

4

1 に答える 1

1

まあ、ロードバランサはアプリケーションコードから分離されています。基本的には、リクエストを処理する多くのセットアップサーバー(別名ダウンストリームサーバー、たとえばWebアプリケーションサーバー、apache / nginx + phpなど)の1つにリクエストをルーティングするだけです実際のリクエスト。したがって、アプリケーション (Java サーブレット、JSP、PHP ページ、静的 HTML ページ、画像など) を更新するには、すべてのダウンストリーム サーバーを更新する必要があります。データ (つまり、記事、ユーザー データベースなど) に関しては、これは通常、すべてのダウンストリーム サーバーが接続するデータベースに格納されます。

アプリケーションの再起動に関しては、ダウンストリーム サーバーのそれぞれでそれを行うと、一時的にリクエストを処理できなくなります。そのため、ロード バランサーは、アプリケーションが動作している状態でサーバーにリクエストを送信しようとすると、「接続できません」という問題が発生します。再起動し、ダウンストリーム サーバーのリスト内の次のサーバーに要求を送信しようとします。ロード バランサの設定方法に応じて、以前に再起動したサーバーに新しいリクエストを自動的に再送信し、再起動したダウンストリーム サーバーが再び起動すると、再びリクエストを処理します。したがって、アプリケーションを更新するには、基本的に一度に 1 つのダウンストリーム サーバーを更新するだけです。他のサーバーが再起動中に負荷を引き継ぐため、ダウンタイムは発生せず、クライアントは賢明ではありません。

これはハードウェア アプライアンスですか、それとも HAProxy/nginx/other を実行しているサーバーにありますか?

于 2012-04-24T13:45:28.897 に答える