1

ポート 80 で PHP アプリケーションを実行している Apache サーバーがあります。PHP アプリケーションは、ポート 3000 経由で NodeJS サーバー (socket.io) と通信します。

ファイアウォールの制限により、ポート 80 のみを使用する必要があります。したがって、サーバー上で内部的に反転される /nodejs/ のような URL をポート 3000 (NodeJS) に指定する必要があります。

NodeJS-Data を NodeJS に転送するリバース プロキシとして Apache (mod_proxy) を使用する方が (パフォーマンスの点で) 良いですか、それとも NodeJS でそれを行う方が良いですか (例: https://github.com/nodejitsu/node- http-proxy ) したがって、NodeJS をポート 80 で実行し、すべての非 NodeJS-Data を内部的に Apache に転送します (これは別のポートで実行されます)。

おそらく、通常の HTTP リクエストよりも socket.io 呼び出しが少し多くなります。

4

1 に答える 1

2

プロキシのみが必要な場合は、そのために特別に設計された HAProxy などを使用する必要があります。

Apache は、接続ごとに新しいスレッドを fork または開始する必要があるため (したがって、Node のすべての利点が失われます)、プロキシはあまり得意ではありません。

さらに、物事を最適化する必要がある場合は、Apache をまったく使用しません。NGINX はサーバーとしてはるかに優れています (たとえば、静的ファイルを提供する場合は Node.js よりも高速です)。

Node.js プロキシ ソリューションを探している場合は、HTTP-Proxy と Bouncy が最適です。

資力:

于 2012-05-28T12:40:50.333 に答える