web-dev-qa-db-ja.com

AWS-アプリケーションの画像、CSS、ログファイルをどこに保存する必要がありますか?

ベストプラクティスに関する説明とガイダンスを探しています。

アプリケーションの画像、CSS、ログファイルはどこに保存すればよいですか?アプリケーションサーバーまたはS3?

ユーザー関連の画像とサムネイルをS3に保存します。本当に必要になるまで、この段階ではCloudFrontを使用しません。

私が持っている別の一連の質問は、EBSに関連しています。アプリケーションサーバーはEBSボリュームを使用する必要がありますか?これを行うことの利点は何ですか? EBSの使用に追加料金を支払うでしょうか。

ありがとう。

3
April

Amazon EBS バックエンドインスタンスをすべてのニーズに使用できます。

2
Dominik

はい、EBSには追加料金がかかります。 EBSの利点は、アクセスが簡単で、APIを経由する必要があるS3とは対照的に、サーバー上のドライブとして表示されることです。また、EBSコンテンツは永続的です。インスタンスに保存するもの(S3内でもEBSボリューム内でもない)は永続的ではなく、マシンを再起動すると消える可能性があります。

S3ではオブジェクトに追加できないため、S3はログファイルには適していません。 S3では、あまり頻繁に変更されない(1日に数回以下のように)ユーザーデータが意味をなします。常に変化するものは、データベース(EBSに保存されている)でより意味があるかもしれません。

2
davr

EBSは、ディスクアクセスのパフォーマンスと可用性を向上させることを目的とした製品です。エピメラルストレージは、I/O操作には最適ではありません。 EBSを使用すると、インスタンスにアクセスできない場合でもデータにアクセスできます。重要なデータやデータベースを保存するのに最適です。

CloudFrontを使用して、すべてのcssjscss関連の画像を保存します。これを行うには、最初にファイルをS3に保存してから、CloudFrontをバケットに適用する必要があります。特別なヘッダー(Expires、Cache-Control)を使用して、ユーザーがこの要素を1回だけダウンロードするようにします。

また、ログをS3にバックアップして永続的に保存することもできます s3cmdを使用 または重複。安価なオプションであり、ディスク容量が不足することはありません。

0
eternal1