Heroku内存泄漏与Play2 scala
做了一些拉伸(ab)测试我的1英雄动力和dev数据库与20连接限制.
在调用期间(该访问数据库与squeryl堆分配正在增加导致R14(内存超过512MB)) 我似乎无法再现这个问题(至少在本地). 有没有办法得到英雄堆转储并分析它得到一些线索? play2,scala,squeryl和heroku内存泄漏有什么已知问题吗? 更新 如果我在控制器的末尾执行System.gc,一切似乎都很好,而且较慢…我在该调用中创建了很多对象,但是不应该是heroku的JVM照顾gc?另外如果我安排gc调用定期不要释放内存 解决方法
有一个伟大的文章来解决Heroku的内存问题:
https://devcenter.heroku.com/articles/java-memory-issues 在您的情况下,您可以将GC标志添加到JAVA_OPTS以查看内存详细信息.我会建议以下标志: heroku config:add JAVA_OPTS =“ – Xmx384m -Xss512k -XX:UseCompressedOops -XX:PrintGCDetails -XX:PrintHeapAtGC -XX:PrintGCDateStamps” 还有一个简单的java代理,你可以添加到你的进程,如果你想要一些更多的信息从JMX关于你的内存.如果你想进一步深入,你还可以看看像New Relic这样的监控插件,但是我认为你应该使用标志和java代理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |