2016-08-26 7 views
0

長時間のlurker初回ポスター。こんにちは。Node.jsエコシステムに大量のメディアファイルを保存する場所は?

フロントエンドにReact.jsを提供するNode.jsバックエンドサーバーがあります。私は巨大な量のmp3とwavファイルを現在サーバー自体にアップロードしています。つまり、ユーザーがフロントエンドにファイルをアップロードし、ノードインスタンスが実行されているサーバー上にフォルダを作成し、そこにmp3/wavを保存します。

プロジェクトは開発から生産に移行していますが、スケーラビリティの観点から、a)このプラクティスはどれくらい悪いのですか。b)ホスティングに最適なオプションと、c)サーバー自体。

既存のユーザーベースは約500人です。それぞれのユーザーは1.5 MBごとに約600 MB〜1.5 GBのメディアをアップロードします。

検索には結論が出ないため、洞察力はすばらしいものになります。ありがとう!

+0

いくつかのオプションがあります。 1)ローカルハードドライブ、2)LANハードドライブ、3)クラウドストレージ(AWSなど)、4)NAS(ネットワーク接続ストレージ)。使用するものは、あなたが提供していないニーズ、アクセスパターン、合計ストレージなどの詳細な理解に完全に依存します。一般的には、ローカルに接続されたハードドライブを使用して簡単に始め、需要やニーズがより優れたものにあなたを導く場合は、より複雑になります。 – jfriend00

+0

あなたの番号が正しい場合は、500 GB /月のアップロードを追加しています。これらのアップロードをすべて無期限に保存する必要がある場合、最初の1年間は6TBが必要になります(予定外のユーザーの増加は想定していません)。私は、あなたがハードドライブの束を管理し、それらを仮想化し、維持し、それらをバックアップし、冗長性を追加するビジネスになりたいと思わない限り、クラウドストレージを検討していると思います。 – jfriend00

+0

応答ありがとう:) - ファイルをストリーミングする必要があります。要するに、私はユーザーが音楽ファイルをアップロードできるサービスを構築しており、他のユーザーはそれらをストリーミングできるので、アクセスは指数関数的にnumユーザー以上になります。私はこれが最も単純なアプローチのように思えるのでAWSを調べます。ありがとうございました! – rpierre

答えて

1

CDNクラウドサーバーと統合することをお勧めします。例:ドロップボックス、google、またはAWS。ロールベースのアクセスや認証など、非常に柔軟なAPIを備えています。

サーバーを使いたい場合でも、ファイルをアップロード/ダウンロードし、oauthベースの認証システムを作成するためにのみ、別のサーバーを実行することをお勧めします。

ストリーミングにも適しています。次に、娯楽、娯楽などのストリーミングサポートを提供するクラウドサーバもあります。

関連する問題