JVM - 我应该分配多少RAM

时间:2016-06-13 06:41:11

标签: java jvm ram jvm-arguments

我没有找到关于我实际应该为JVM分配多少RAM的建议。

假设我的计算机有4GB RAM并运行Windows 10.我几乎只使用Java应用程序。我应该启动JVM多少RAM?系统也需要自己的RAM,所以在我的逻辑中,即使可能,我也不应该分配4 GB。

这不是一个黑/白问题,我只是想知道如何在这个问题上找到答案。

2 个答案:

答案 0 :(得分:2)

  

我没有找到关于我实际应该为JVM分配多少RAM的建议。

JVM的默认设置为主内存的1/4。如果您有4 GB,则默认为1 GB。

注意:这是一个非常小的系统,你得到一些嵌入式设备和手机这么多的内存。

如果你有能力购买更多的记忆,它将使你的生活更轻松。

  

我几乎只使用Java应用程序。我应该启动JVM多少RAM?

除非您有理由更改命令行参数,否则我会将其保留原样。

注意:您的操作系统需要一些内存,可能是1 GB,并且您希望保留1 GB可用于缓存等,因此您可以将堆大小增加到2 GB,但仅限于您需要。

  

如果我并行运行4个程序怎么办?我还可以为每个程序分配2GB吗?

是的,但这是一个非常糟糕的主意。您的应用程序将开始交换,您的计算机可能无法使用。我会尝试将此机器的总容量保持在2 GB以下。

  

我们这里有一个业务应用程序,经常达到最大分配的Ram,这使得如果用户打开了太多“标签”,它会滞后很多。

在这种情况下,您应确保拥有适合该作业的工具,这意味着确保您的系统有足够的内存。 4 GB的内存价格为18美元。如果你有一个4 GB的爱好PC,我会说,获得更多的内存。三年前,我8岁的儿子8岁时给了他一台8 GB内存的电脑,因为购买更少的东西是没有意义的。我只需要16 GB或32 GB。然后值得花一些时间调整它,也许吧。

答案 1 :(得分:1)

您可以在命令行中输入“jconsole”或“jmc”来查看java使用的内存量。