Heroku调度程序内存配额不断超过(Java Play)

时间:2016-11-04 14:51:45

标签: java heroku playframework scheduled-tasks

我们正在Heroku上运行一个Java Play项目,并且整天都在Heroku / scheduler dyno上获得无限错误R14(超出内存配额)。

heroku / scheduler.3831:正在运行的进程mem = 1058M(103.1%)

heroku / scheduler.3831:错误R14(超出内存配额)

我们目前有5个日常工作,但它们都是在工作时间之后发生的。出于某种原因,虽然Heroku / scheduler dyno整天都在达到内存配额上限,尽管没有任何工作实际运行。

网络dynos工作没有问题。有没有人遇到Heroku Scheduler这个问题?

2 个答案:

答案 0 :(得分:0)

我建议降低调度程序进程的最大堆大小。播放因使用大量本机(堆外)内存而臭名昭着(主要是因为我觉得Netty)。如果降低堆大小,它应该为本机内存留出更多空间。

您可以在调度程序运行的-Xmx300m命令中使用java之类的选项设置最大堆大小。

答案 1 :(得分:0)

您可以尝试为您的调度器作业增加 dyno 大小(例如:Standard-1X -> Standard-2X)