2

大きなファイルをアップロードするRubyonRailsアプリケーションを書いています。(20-100MB)。私は、レールプロセスを拘束せずにこれを行う方法を検討しました。私は特にこれを行うnginxモジュールに出くわしました。(http://www.grid.net.ru/nginx/upload.en.html)

ただし、ログとサーバーを監視していると、大きなファイルをアップロードしているときに、nginxモジュールアップロードモジュールがインストールされていなくても、railsプロセスに送信する前にバッファリングされているように見えます。

私の質問は次のとおりです:nginxはデフォルトでこれをインストールしているようです...アップロードモジュールをインストールして使用する必要がありますか?ここで実際に何が起こっているのですか?

〜カーク

4

1 に答える 1

2

nginxは、アップストリームへの接続を開く前に、常にリクエストボディをバッファリングします。ネイティブの動作と見つけたモジュールの違いは、ネイティブの動作では、ファイルの内容がバックエンドへの接続を介して送信され、アップロードモジュールはファイル名のみをバックエンドに送信するため、データ量が削減されることです。ソケットを介して送信されます。これは、nginxとバックエンドが同じマシン上にある場合にのみ機能します。

于 2012-04-13T11:54:15.367 に答える