2

いくつかの良い習慣についてお聞きしたいと思います。Node.js(Express)Webサーバーとsocket.ioプッシュサーバーがあります(テクノロジーが重要な場合)。両方を1つのアプリケーションに変えることはできますが、分離してほしいです(必要に応じて相互に通信できます)。これを行う理由は2つあります。

  1. アプリの管理、デバッグ、開発が簡単になります。
  2. アプリのスケーリングがはるかに簡単になります。必要に応じて、プッシュサーバーまたはWebサーバーの別のインスタンスを追加できます。

これは少なくとも私が信じていることです。唯一の問題は、クライアントが別のsocket.ioサーバーに接続すると、Cookie(異なるポート、クロスドメインポリシー)を送信しないことです。

私が思いついた回避策は、リバースプロキシ(Node.jsでも記述されている)を前面に配置し、処理しているリクエストの種類を確認して、それに応じてWebサーバーまたはプッシュサーバーに送信することです。これで、Webサーバーとプッシュサーバーの両方にCookieが追加されました。リバースプロキシは、追加のボーナスであるロードバランサーにすることができます。

それは私には良い考えのように見えます。このデザインについてどう思いますか?おそらく、Cookieの問題に対する他の回避策はありますか?

4

1 に答える 1

1

私は最近、似たようなことをしました。最初は node.js リバース プロキシを使用していましたが、信頼性/スケーラビリティの問題に遭遇しました。静的ファイルの提供とリクエストのプロキシは、nginx に任せるのが最善であることがわかりました。haproxy は、スタンドアロンのプロキシとしても非常に実行可能なソリューションです。

リバース プロキシとしてのHaProxy Nginix

于 2012-06-13T02:01:24.680 に答える