node.jsアプリケーションを提供するためにnginxなしでローカルセットアップを使用しましたが、socket.ioを使用していて、パフォーマンスはかなり良かったです。socket.io nginxを使用した後の応答が遅い
さて、私はプロキシに私の要求をnginxのを使用していますが、私はsocket.ioは私のページが速くレンダリング取得されることを意味し、巨大な応答時間を持っていますが、socket.ioによってレンダリングされたデータは、大きさの順であることがわかり以前よりも遅くなりました。
私はすべてが働いているにもかかわらず、私は2つの問題を持って、
socket.io応答が以前より遅くなり、
gzip on; server { listen 80; server_name localhost; #charset koi8-r; access_log logs/host.access.log main; location/{ proxy_pass http://localhost:9999; root html; index index.html index.htm; }
をnginxの1.1.16を使用して、ここconfにあるのです。 NGINXの場合、応答時間は です。の時間は約12-15秒です。この をApacheのベンチマークで試しました。私は のnginxを使用する前に、ありませんでしたコンソールでこのメッセージが、
[2012-03-08 09:50:58.889] [INFO] console - warn - 'websocket connection invalid'
メッセージが...のNode.jsアプリケーション(ないnginxのから)からですだから、私はWebSocketを介してデータを取得しておりませんと言うことを意味しませんが、いくつかの他のトランスポート機構を介して?どうすれば確認できますか? – user644745
そうです、意味があります。はい、Webソケット経由でデータを取得していませんが、NGINXは理解できない場合でもパケットを転送しようとしています.HTTP 1.1のWebソケット要求をHTTP 1.0に間違って変換します。 socket.ioには、これは壊れています。 –
回避策は、アプリケーションレイヤーで作業するのではなく、NGINXを構成することです。トランスフォームレイヤー上で動作するはずです。詳細な指示は私の答えのリンクにあります。 –