1

そのため、ユーザーが写真をアップロードできる node.js で Web アプリケーションを作成しており、すべての写真に対していくつかのアクセス制御設定 (公開、非公開、友達のみ) を指定できます。

次に、リクエストごとにユーザーのセッション キーをチェックして、ユーザーがアクセスできることを確認します。その場合は、fs を使用してファイルを開き、応答オブジェクトにパイプしてファイルを送信します。

ただし、これを apachebench でベンチマークすると、1 秒あたり約 1500 のリクエストが発生します。データベースのものをすべて削除しても、それほど速くはなりません。比較すると、Nginx は同じ写真に対して 1 秒あたり 17000 のリクエストを処理します。

明らかに、この桁違いの違いは、私のサービスが軌道に乗れば、大きなコストの問題になるでしょう。

それらをすべて公開する以外に、静的なようなパフォーマンスを維持しながらアクセスを制御するより良い方法はありますか?

編集: 現実的には、ファイルはファイルシステムではなく S3 でホストされます。したがって、ノードは静的ファイルサーバーとしてではなく、http プロキシとして機能します。これは、はるかに優れていると思います。

4

1 に答える 1