1

Barracuda Load Balancer (3 台のサーバーが実行中) を使用した Web アプリケーションのセットアップがあります。websocket (socket.io) を使用してノード js を実装したいのですが、リクエストがロード バランサーを経由する場合、常に xhr ポーリングに陥ります (これは遅すぎます)。

これを修正しようとしたのは次のとおりです。

  • バラクーダ ロード バランサーのサービス プロバイダーに対してポート 3000 を既に開いています。
  • 他のstackoverflowの質問で説明されているように、nginx構成でプロキシを使用しました。
  • nginx のバージョンを 1.2.7 から 1.4.1 にアップグレードしました

私たちを困惑させているのは、1 つのサーバーのみを使用し、ロード バランサーに移動しない場合は問題ありませんが、ロード バランサーを使用する場合、Websocket 経由で接続できず、常に xhr ポーリングにフォールバックすることです。

これはnginxエラーログが取得しているものです:

*14369 connect() がアップストリームに接続中に失敗しました (111: 接続が拒否されました), クライアント: 121.96.XX.XXX, サーバー: www.example.co.uk, リクエスト: "GET /socket.io/ HTTP/1.1", アップストリーム: " http://192.168.XX.XXX:3000/socket.io/ "、ホスト: "www.example.co.uk"

4

0 に答える 0