如何找到并消除在Heroku上运行的隐藏进程?



我有一个CSV导入,它在大约11,000个名称的列表上通过各种进程运行。这个过程是在后台进行的,文件本身可以在2.5秒内上传。

问题是,Heroku给了我一个R12超时超过30秒。整个进程挂起,直到我得到一个应用程序错误。

如果我运行heroku logs,则根本没有运行任何操作。

但是,我发现如果我运行heroku restart,那么文件在不到5秒的时间内进入救援和后台,一切都很好。

所以我想象有某种用完的内存。是否有一种方法可以获得这些进程被消耗的统计数据?我知道Ruby没有手动GCC,但是有可能有些东西没有得到正确的垃圾收集吗?

您可以使用运行时指标日志记录,它经常将内存和CPU使用情况统计信息打印到每个运行进程的日志中。这可能会给你一些线索,让你知道超时是从哪里来的。

你可以像这样启用它:

$ heroku labs:enable log-runtime-metrics
$ heroku restart

查看Heroku文档获取更多信息

相关内容

  • 没有找到相关文章

最新更新