Memory 错误R14(超出内存配额)

Memory 错误R14(超出内存配额),memory,heroku,clojure,Memory,Heroku,Clojure,我有一个Clojure web应用程序,我正在Heroku上运行一个免费计划。这个应用程序已经运行了差不多一个月了,但是在过去的3天里,日志显示了这个错误,并且这个应用程序不工作 我无法在本地重现这个错误,因为一切都很好 我多次尝试重新启动该应用程序,部署一个新实例,并摆弄JAVA_选项和JAVA_工具选项,但都无济于事,我也遇到了同样的错误 应用程序的全部代码是。是否有人遇到过此错误以及解决此错误的可能方法?正如错误消息所述,应用程序消耗的内存比Heroku分配给它的内存还要多。Heroku

我有一个Clojure web应用程序,我正在Heroku上运行一个免费计划。这个应用程序已经运行了差不多一个月了,但是在过去的3天里,日志显示了这个错误,并且这个应用程序不工作

我无法在本地重现这个错误,因为一切都很好

我多次尝试重新启动该应用程序,部署一个新实例,并摆弄JAVA_选项和JAVA_工具选项,但都无济于事,我也遇到了同样的错误


应用程序的全部代码是。是否有人遇到过此错误以及解决此错误的可能方法?

正如错误消息所述,应用程序消耗的内存比Heroku分配给它的内存还要多。Heroku允许您查看应用程序指标,其中的图表可能有助于确定原因


Heroku为JVM应用程序中与内存相关的问题提供了专门的指南。您可能会发现它很有用。

尝试通过运行

$ heroku config:set JAVA_TOOL_OPTIONS="-Xmx256m"

我找到了记忆超常的罪魁祸首。
Heroku在启动时运行的命令未使用jar文件。我之前做的是
web:lein-ring-server-headless
,我将其更改为执行jar
web:java-jar-target/,我还让Heroku在启动之前运行
lein-ring-uberjar
,而不是
lein-uberjar
:这与在Heroku中设置
lein-u-BUILD\u-TASK='ring-uberjar'
作为全局配置变量一样简单

这似乎对我的具体情况没有帮助。尝试了一系列类似的优化,但没有成功。这可能意味着你有很多本机内存。读这个