在Heroku中下载大文件时遇到一些问题。我必须下载并解析大于1Gb的文件。我现在要做的是使用curl将它们下载到/ tmp文件夹(Rails应用程序)。
curl命令是:“curl --retry 999 -o#{destination}#{uri} 2> / dev / null”,目标是Rails.root.join(“tmp”,“file.example”)
问题是,下载几分钟后,正在下载文件的“curl”进程完成,远离下载完成。在完成之前,日志显示大量“超出内存”。这让我想到当我保存到/ tmp文件夹时,它将下载的内容存储在内存中,当内存达到其限制时,该进程被终止。
我想知道你们中是否有人在Heroku上遇到类似的问题,如果保存到/ tmp文件夹真的是这样的话。如果是这样,你有什么建议让这个在Heroku工作吗?
感谢, Elvio
答案 0 :(得分:-1)
最好使用fog gem将文件保存在S3等外部云提供商中。在任何情况下,Heroku都是只读文件系统,所以它们不允许你卷曲,必须少写它。