如何限制Java 8应用程序消耗的总内存? [英] How to limit total memory consumed by Java 8 application?
问题描述
为了限制Java 7应用程序消耗的总内存,我可以使用以下公式(取自这篇文章):
In order to limit total memory consumed by Java 7 application I could use the following formula (taken from this article):
最大内存= [-Xmx ] + [-XX:MaxPermSize] + number_of_threads * [-Xss]
Max memory = [-Xmx] + [-XX:MaxPermSize] + number_of_threads * [-Xss]
在PermGen之后,此公式如何为Java 8应用程序更改已被删除?
How this formula changes for Java 8 application, after PermGen has been removed?
我应该使用选项-XX:MaxMetaspaceSize来限制元空间消耗的最大内存吗?
Should I use option "-XX:MaxMetaspaceSize" to limit the maximum memory consumed by metaspace instead?
推荐答案
是的,有 -XX:MaxMetaspaceSize
而不是 -XX:MaxPermSize
。
还考虑 -XX:MaxDirectMemorySize
来限制直接ByteBuffers的内存。
Consider also -XX:MaxDirectMemorySize
to limit memory for direct ByteBuffers.
这篇关于如何限制Java 8应用程序消耗的总内存?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!