Mule ESB JDK 1.8内存调整

时间:2016-04-12 12:09:55

标签: mule

我们计划将JDK 1.8用于Mule 3.7 CE

过去我们编辑了wrapper.conf以调整内存JDK 1.6/1.7使用。我们通过编辑来做到这一点:

wrapper.java.initmemory=256m
wrapper.java.maxmemory=512
wrapper.java.additional.7=-XX:PermSize=256m
wrapper.java.additional.8=-XX:MaxPermSize=512m

查看linux中正在运行的流程,我们发现Mule仍然使用xmx设置。如果没有弄错,这在java 1.8中不再有效,因为它已被删除。相反,JDK 1.8使用元空间。

现在我的问题是,我们如何/在哪里使用Mule 3.7JDK 1.8进行内存调整?或者Mule 3.7 CE不支持这个吗?

我们只需在wrapper.conf中添加以下设置吗?:

wrapper.java.additional.16=-XX:MetaspaceSize=100M
wrapper.java.additional.17=-XX:MaxMetaspaceSize=2024m

并删除:

wrapper.java.initmemory=1024
wrapper.java.maxmemory=1024

或者我们仍然使用以下设置?

wrapper.java.initmemory
wrapper.java.maxmemory?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以继续使用initmemory和maxmemory。 更改为Java 1.8不会影响这一点。

我们在Linux中使用Java 1.8和Mule 3.7,我们能够使用initmemory和maxmemory的当前设置成功控制堆分配。

您可能只想使用Metaspace配置来替换PermGen设置。

wrapper.java.additional.16=-XX:MetaspaceSize=100M
wrapper.java.additional.17=-XX:MaxMetaspaceSize=2024m

通过以下链接获取更多信息。 http://www.infoq.com/articles/Java-PERMGEN-Removed

希望这有帮助。