3

我有这种情况:

我有一个 zip 文件供用户下载,但对于每次下载,我想包含一个包含用户特定内容的“自述文件”(例如用户名和下载时间)。我使用归档器(zip-stream)模块将压缩后的内容压缩并流式传输到浏览器。目标是最小化 CPU 使用(即压缩)和存储(即创建相同 zip 的副本)。以下是一些可能的方法来实现这一点。

  1. 每次下载时,制作原始 zip 的副本,然后将动态生成的自述文件添加到副本中,然后再流式传输到浏览器。如果许多用户同时下载,这将创建原始 zip 文件的许多重复副本。这是不可接受的,因为 zip 文件可能有 2Gb 大。

  2. 每次下载后,为流媒体创建一个新的 zip,其中包括原始 zip 文件和自述文件。这可以节省 CPU 和存储空间,因为新的 zip 是动态创建的。但这意味着用户必须在下载后解压缩两次,这是不可接受的。

我想知道我是否可以存储一个“未完成”的 zip 文件并将自述文件附加到其中,然后再完成它并将其流式传输到浏览器。

4

0 回答 0