【发布时间】:2012-03-14 23:48:01
【问题描述】:
在 Heroku 中使用延迟作业时有哪些限制?尤其是可以使用多少本地存储,有哪些系统二进制文件(如 zip)可用?
【问题讨论】:
标签: heroku delayed-job
在 Heroku 中使用延迟作业时有哪些限制?尤其是可以使用多少本地存储,有哪些系统二进制文件(如 zip)可用?
【问题讨论】:
标签: heroku delayed-job
我在 Heroku 上使用延迟作业时遇到的主要限制是长时间运行的进程有时会达到 512MB RAM 的限制,然后被 Heroku 杀死。它不是以干净的方式完成的(关于延迟的工作如何处理它)。 Delayed Job 仍然认为有一个正在运行的进程,所以你必须手动删除该任务,然后重新启动它。如果您的任务不是以这样的方式编写的,您可以重新启动它并从中断的地方重新开始,那么您可能会遇到问题。
Wrt 系统二进制文件我以前使用过 git,我刚刚检查过 gzip 可用。我通常会打开一个控制台并四处探索。
irb(main):007:0> `gzip --version`
=> "gzip 1.3.12\nCopyright (C) 2007 Free Software Foundation, Inc.\nCopyright (C) 1993 Jean-loup Gailly.\nThis is free software. You may redistribute copies of it under the terms of\nthe GNU General Public License <http://www.gnu.org/licenses/gpl.html>.\nThere is NO WARRANTY, to the extent permitted by law.\n\nWritten by Jean-loup Gailly.\n"
我不确定磁盘的存储限制。我想我在某个地方读到过,您可以使用多达 4GB 的空间。但是,它仅适用于该过程,并且本质上是短暂的。我通常从 S3 读取一个较大的文件,然后让一个父进程创建较小的子任务来处理该文件,并将每个子任务所需的数据作为调用的一部分传递。
【讨论】:
heroku run bash 打开一个 shell 会话。