[解決済み] `aws s3 cp` vs `aws s3 sync` 動作とコスト [終了しました]。
質問
にデプロイしている静的サイトがあります。
s3
を使用し
CloudFront
を使用してユーザーに配布しています。サイトを構築した後、新しいビルドをプッシュして
s3
. そのために、2つのアプローチを見つけました。
-
aws s3 cp --recursive ./public/ s3://bucket-name --cache-control 'public, max-age=300, s-maxage=31536000'
-
aws s3 sync --delete ./public/ s3://bucket-name --cache-control 'public, max-age=300, s-maxage=31536000'
毎週1~2回のデプロイを予定しています。
どれが安価(お金)か知りたいのですが?もっとはっきり言うと、この中でどれが長い目で見てコストがかからないか知りたいのです。
ドキュメントを読んでみたのですが、違いがよくわかりませんでした。どうかご教授ください。
どのように解決するのですか?
一つ注意すべきは
aws s3 cp --recursive
と
aws s3 sync --delete
は異なる動作をします。
aws s3 cp
は、コピー先の領域にすでに存在するファイルであっても、すべてのファイルをコピーします。 また、コピー元からファイルが削除されても、コピー先からファイルを削除することはありません。
aws s3 sync
は、ファイルをコピーする前にコピー先を見て、新しいファイルや更新されたファイルのみをコピーします。この
--delete
フラグは、ソースで削除されたものをデスティネーションで削除することもできます。
その
sync
コマンドは、2つのフォルダを同期させながら、最小限のデータをコピーするように設計されているので、このコマンドを使用します。 同期することで、S3バケットにプッシュされるデータは少なくなるはずなので、全体的なコストは少なくなるはずです。
反例を挙げるとすれば、例えば
aws s3 cp
よりも高性能かつ低コストで
sync
は、ファイルの転送だけが必要で、かつ
知っている
はすべて宛先の新しいファイルです。 この方法は、転送を開始する前に転送先にファイルが存在するかどうかを確認する必要がないため、より高いパフォーマンスと低コストを実現します。
関連
-
[解決済み] DynamoDBテーブルの複数の項目を一度に更新する方法
-
[解決済み] AWS Secrets Managerで指定された秘密が見つからない
-
[解決済み] RDS は、以下の組み合わせでの DB インスタンスの作成をサポートしていません。
-
[解決済み] タスク実行時にAWS ECSエラーが発生しました。クラスタにコンテナインスタンスが見つかりませんでした。
-
[解決済み] ウェブサイトがAmazonネームサーバーを持っているが、別のサーバーでホストされている方法
-
[解決済み] Amazon MQとSQSの違いは何ですか?
-
[解決済み] DynamoDBのBatchGetItemとQueryの違いとは?
-
[解決済み] AWS - Disconnected : サポートされている認証方法がありません (サーバーは :publickey を送信)
-
[解決済み] aws-cliでdynamodbのitemを返却する方法
-
[解決済み] "保護されていない秘密鍵ファイル!" Amazon EC2インスタンス(AWS)へのSSH利用時のエラーについて
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】DynamodbとRedisの比較
-
[解決済み] -bash: aws: コマンドが見つかりませんでした。
-
[解決済み] LATERAL VIEW EXPLODE in presto(ラテラルビュー エクスプロード イン プレスト
-
[解決済み] Cognitoのサインアップ時に電話番号の書式が無効である
-
[解決済み] AzureにはAWSのCloudFormationのようなIaCツールはあるのでしょうか?[クローズド]
-
[解決済み] DNS名foo.を持つRRSetはゾーンバーで許可されていません。
-
[解決済み] TerraformとAWS。No Configuration Files Found Error
-
[解決済み] Amazon S3におけるHeadBucket操作とは
-
[解決済み] AWSのstsは、1つのコマンドの役割を担う
-
[解決済み] s3バケットから複数ファイルをコピーする