私はかなり長い間 ruby/php Web アプリケーション開発者をしており、より多くのリクエストを処理するためにサーバー インスタンスを水平方向にスケーリングするという考えには慣れています。水平スケーリング - 何も共有せず、お互いを認識しない、ロードバランサーの背後にあるアプリケーションの個別のインスタンスを意味します。
私が持っている主な質問は、Node.jsとそれがevented-ioに重点を置いているため、node.jsサーバーを実行している単一のボックスで「数千」の同時リクエストを処理できるため、nodejsアプリケーションのスケーリングに使用される負荷分散/水平スケーリングです? ノードアプリのスケーリングは垂直方向のスケーリングに限定されていますか (問題により多くの RAM/処理能力を投入します)?
2 番目の質問は、node.js の水平方向のスケーリングと WebSocket に関するものです。私は、WebSocket を利用する Node.js の「チャット」チュートリアルを数多く見てきました。(お気に入り: http://martinsikora.com/nodejs-and-websocket-simple-chat-tutorial )
Websocket はブラウザーとサーバーの間のオープンな通信回線を効果的に維持するため、PHP/Ruby の世界に典型的な水平方向にスケーリングされたアーキテクチャにより、リンクで説明されているようなチャット アプリケーションが壊れます。新しい Websocket 接続要求がさまざまなプロセス/サーバーに割り当てられ、接続されているすべてのクライアントを追跡する中央リソースはありませんか?