出现错误 R14(超出内存配额)错误时自动重启 Heroku dynos
Posted
技术标签:
【中文标题】出现错误 R14(超出内存配额)错误时自动重启 Heroku dynos【英文标题】:Automatically restart Heroku dynos on Error R14 (Memory quota exceeded) errors 【发布时间】:2016-12-10 16:37:13 【问题描述】:我正在运行一个需要泄漏内存的库的应用程序。 (不幸的是,这个专有软件别无选择)。 结果,测功机超出了它们的内存限制并发出 Error R14 (Memory quota exceeded) 错误。
有没有办法自动重启发出错误 R14 的测功机?
或者 Heroku 会真正为我重新启动测功机吗?如果是的话,大概是什么时候? (在文档中找不到任何关于此的内容,我从未注意到 heroku 关闭了我的测功机)
非常感谢您!
艾迪
【问题讨论】:
【参考方案1】:一旦超过 dyno 内存限制和 dyno SWAP MEMORY 限制,Heroku 将自动重新启动您的 dyno。有 2 个单独的限制。
当您看到错误 R14 消息时,这意味着您已经超出了内存限制——但是 Heroku 将让您的 dyno 继续运行,直到您也用完交换内存(这有点像假内存,被持久化到磁盘)。
这样做的缺点是您的应用程序在使用交换内存时会慢很多。
好消息是,如果您的应用程序泄漏内存的速度足够快,Heroku 无论如何都会快速重启它 =)
【讨论】:
我向你保证这些信息是正确的 =)以上是关于出现错误 R14(超出内存配额)错误时自动重启 Heroku dynos的主要内容,如果未能解决你的问题,请参考以下文章
Heroku 上的 Rails 4 错误 R14(超出内存配额)