2017-11-07 27 views
0

の正しい考えです:アイデアは、あなたのサーバーにS3バケットからファイルを同期することである私は前にS3を使用していませんでしたが、私はこの言葉には正しいだろう、これはAWS S3バケット

  • を。
  • (たとえばファイルを追加して)同期した後にローカルファイルシステムを変更すると、このファイルがバケットに書き戻されるようにする必要があります。

このように、サーバーはファイルシステムが損傷していない場合は元に戻してください。

は、これが私たちのシナリオです:これは私たちが費やす必要はありませんセットアップでオーバーヘッドであるよう

基本的に、我々は、インスタンス間で共有するために、完全なEFSストレージを必要としません。私たちは現在、1つのec2しか持っていないので、s3バケットにアプリユーザーのアップロードをダンプします。ある時点で、サーバーが長時間停止したり、削除されたりすることもあります。サーバーが再びスピンアップされると、元のイメージを保持する必要があります。

アプリはノードであり、現在、このパッケージはS3 https://www.npmjs.com/package/s3

のために使用されているが、このパッケージには、地元からの同期ディレクトリを提供しています - > S3が、その逆ではありません。私はs3を実装する方法についての私の考えが正しいかどうか疑問に思いました。

+0

ローカルフォルダとは「同期」しないでください。 S3に保存するだけです。 –

答えて

0

私たちは最終的にs3に対して決定しました。

このようにs3を使用することは完全に可能であり、シンプルな同期ツールを構築する必要があることは間違いありません。

しかし、トランザクションが上記バケットとの間のアップロードおよびダウンロードであるトランザクションのためのs3ストレージ料金...つまり、s3は非常に高価なオプションです。代わりに、ebをインスタンスのビルドにマウントすることができます。私は実際に誰がs3を選ぶのか見ない。

1

私はあなたが何をしようとしているのかはよく分かりませんが、単純なS3はストレージサービスです。長い時間ファイルを保存する必要がある場合に使用します。あなたは安価なストレージがたくさん必要なときだけでなく。

私の経験では、一般的にs3を主ストレージサーバーとして使用し、バックアップストレージサーバーとしても使用しました。だから基本的にあなたの質問への答えはあなたが正しいと思っていて、何とかあなたは間違っています。

あなたがしようとしていることについてもっと知りたいと思います。

+0

明確にするためにOPにシナリオを追加しました。 – John

+0

大丈夫です。私は、あなたがバケツ上の操作である重要なものを見逃していると思います。私は公式のawsパッケージをここに使用することをお勧めします。https://www.npmjs.com/package/aws-sdk –

+0

これが必要なときはいつでも、基本的にあなたにできるバケツを介して作成、更新、または削除操作を送ることができます必要に応じてファイルを処理します。 –

0

S3は、単純なファイルストレージサービスである名前とまったく同じです。オーバーヘッドのためにEFSを使用する場合は、意図したとおりにs3を使用できます。 s3の主なオーバーヘッドは、バケットへのアクセス権と、バケットへのサーバの同期を調整する複雑さです。

関連する問題