5

在 Heroku 中下载大文件时,我遇到了一些问题。我必须下载和解析大于 1Gb 的文件。我现在要做的是使用 curl 将它们下载到 /tmp 文件夹(Rails 应用程序的)。

curl 命令是:“curl --retry 999 -o #{destination} #{uri} 2> /dev/null”,目标是 Rails.root.join("tmp", "file.example")

问题是几分钟下载后,下载文件的“卷曲”过程已经完成,远未完成下载。在完成之前,日志显示很多“超出内存”。这让我想到,当我保存到 /tmp 文件夹时,它会将下载的内容存储在内存中,当内存达到其限制时,进程被终止。

我想知道你们中是否有人在 Heroku 上遇到过类似的问题,以及保存到 /tmp 文件夹是否真的像这样工作。如果是这样,您对在 Heroku 进行这项工作有什么建议吗?

谢谢,埃尔维奥

4

1 回答 1

-1

最好使用雾 gem 将文件保存在 S3 等外部云提供商中。无论如何,Heroku 是一个只读文件系统,所以它们不允许你卷曲,必须少写。

于 2012-09-17T14:29:10.790 回答