【问题标题】:Google cloud storage create zip file with all files from a bucket folder with app engine谷歌云存储使用应用引擎创建包含存储桶文件夹中所有文件的 zip 文件
【发布时间】:2023-03-03 00:05:02
【问题描述】:

我想创建一个包含存储桶文件夹中所有文件的 zip 文件,并将此 zip 文件写回谷歌云存储。 我想在应用引擎标准环境中执行此操作,但我没有找到执行此操作的好示例。

【问题讨论】:

  • 您好 user2494876,欢迎来到 Stack Overflow!到目前为止,您尝试过什么?
  • 目前我正在寻找可行性,因为应用引擎无法写入本地磁盘,我不知道是否可以在创建之前下载所有文件拉链
  • 不使用 App 引擎,我所做的是 - 创建一个云函数,在存储桶中创建新文件时触发该函数,使用 jszip 之类的包获取并创建一个 zip,然后添加这个 zip 到存储注意-如果你想每次都生成,只需将触发器更改为 HTTP 请求

标签: google-app-engine google-cloud-storage firebase-storage


【解决方案1】:

如果在创建zip 文件期间通常需要的可写临时文件的大小可以适合您的实例类的可用内存,则您可以使用StringIO 工具并避免写入文件系统。示例见How to zip or tar a static folder without writing anything to the filesystem in python?

也可以直接将zip 文件写入 GCS,基本上使用 GAE 应用程序作为管道,这可能规避了上面提到的可用实例内存限制,但你会必须尝试一下,我没有实际的例子。需要注意的技巧是选择正确的文件处理程序参数,也许还有缓冲选项。 How to open gzip file on gae cloud?

【讨论】:

    猜你喜欢
    • 2012-09-13
    • 1970-01-01
    • 2012-10-13
    • 2016-01-17
    • 2015-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多