私たちは、haproxyを使用してロードバランスされたHTTPウェブサービスに取り組んでいます。 WebサービスにはSSL経由でアクセスします。これはRESTfulなHTTPサービスであり、単にJSONを受け入れ、動作し、JSONを返します。セッションの概念はありません。ロードバランシングされたHTTPウェブサービスに永続的な接続サポートを追加する方法
冗長化されたWebサービスサーバの前に冗長ロードバランサを設定しています。各サーバーはApacheの背後に位置し、ApacheはSSLとロギングを処理するためにプロキシとして使用されます。重要な場合、私たちのWebサービスは、HTTPを処理するためにcompojure(jetty)を使用するClojure(java)アプリケーションです。
これは、既存のシステムによるクライアント要求のパスを示す簡単な図です。
client request -> haproxy (load balancing) -> apache (ssl, logging) -> webservice
我々は永続的な接続を確立するために、ロードバランサへの接続を希望し、その持続的な接続を介して送信されるすべての後続の要求のために、同じサーバによって提供さ。言い換えれば、我々は、複数のWebサービスサーバへのリクエストを作成するための持続的な接続を望んでいません。
私たちはこれを動作させることをどのようにお勧めしますか?ロードバランサへの特定の接続を特定のWebサービスサーバに「固定」するにはどうすればよいですか?複数の集中的なリクエストで特定のWebサービスサーバーを誤ってロードするのを防ぐにはどうすればよいですか?
ありがとうございました。 JSONを受け入れて返すHTTP Webサービスを実行しています。 Webサービスに接続しているクライアントはブラウザではないので、この例ではクッキーが役立つとは思っていません。 – jkndrkn