Roh*_*ngh 8 amazon-s3 amazon-web-services static-site
我有一个静态站点,我将其部署到该站点,s3然后将CloudFront其分发给用户。构建站点后,我想将新构建推送到s3. 我找到了两种方法来做到这一点。
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'
我计划每周部署一次或两次。
我想知道这些哪个更便宜(钱)?更明确地说,我想知道从长远来看,这些中哪一个会降低我的成本?
我尝试阅读文档,但无法找出差异。请帮我解决一下这个。
JD *_*D D 17
需要注意的一件事是,aws s3 cp --recursive并且aws s3 sync --delete有不同的行为。
aws s3 cp将复制所有文件,即使它们已存在于目标区域中。如果从源中删除文件,它也不会从目标中删除文件。
aws s3 sync在复制文件之前查看目标并且只复制新的和更新的文件。--delete如果在源中删除了这些内容,该标志还将删除目标中的内容。
该sync命令是您想要的,因为它旨在处理在复制最少量数据的同时保持两个文件夹同步。同步应该会导致更少的数据被推送到 S3 存储桶,因此总体成本应该更低。
举一个反例,一个用例aws s3 cp比sync如果您只需要传输文件并且您知道所有文件都是新的目的地,则性能优于并且成本更低。这是更高的性能和更低的成本,因为代码在开始传输之前不会检查目的地是否存在。
| 归档时间: |
|
| 查看次数: |
6109 次 |
| 最近记录: |