【问题标题】:Laravel advice on unzipping files on s3Laravel 关于在 s3 上解压缩文件的建议
【发布时间】:2016-05-21 23:42:22
【问题描述】:

我有一个用户上传 zip 文件的表单。我正在使用文件系统。

是否可以将文件上传到 S3,然后在那里解压缩文件?

我应该先解压缩文件然后将它们上传到 S3。

压缩后的文件夹中有很多文件(大约 500-600 个小文件),那么 laravel 如何处理如此大量的文件?系统会在文件上传期间拖拽还是在后台进行?像一个队列

【问题讨论】:

    标签: laravel amazon-s3 laravel-5 unzip


    【解决方案1】:

    不,AWS S3 不会为您提供在 S3 上解压缩文件的此类功能。

    如果您在同一区域内有 EC2 实例,则将您的 zip 文件上传到 EC2,然后将其移动到 S3 Unzipped。

    ec2 和 s3 之间不收取任何费用,因此 ec2 可以处理解压缩,然后将其写入您的 s3 存储桶,而无需额外的传输费用。

    S3 将为您提供存储空间。

    EDIT- 将文件从 EC2 传输到 S3

    您可以在 AWS CLI 中使用以下命令。在你 EC2 上

    aws s3 cp myfolder s3://mybucket/myfolder --recursive
    

    这是它的参考。 http://aws.amazon.com/cli/

    用于在不中断执行的情况下将文件从 EC2 复制到 S3

    • 创建脚本以将文件从 ec2 传输到 s3。并在将文件上传到 ec2 之后。使用 laravel 队列执行脚本。这样用户就不必等到文件正在传输。 https://laravel.com/docs/5.1/queues

    【讨论】:

    • 谢谢 satish,但是文件从 ec2 上传到 s3 的时间呢?服务器会暂停将文件上传到 s3 还是会在后台进行?像一个队列。
    • 您可以创建一个函数,然后将某些内容上传到 ec2。只需使用 laravel 队列调用该函数。
    猜你喜欢
    • 2012-01-08
    • 2021-09-12
    • 2013-01-07
    • 2010-09-15
    • 1970-01-01
    • 2012-08-07
    • 2020-08-19
    • 2014-05-22
    • 1970-01-01
    相关资源
    最近更新 更多