我们计划将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.7
对JDK 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?
谢谢!
答案 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
希望这有帮助。