增加在运行时分配给JVM的最大内存(Xmx)

时间:2015-06-07 19:46:44

标签: java

在发布这个问题之前,我已经通过java increase xmx dynamically at runtime发帖,但回答这个问题并不能让我满意地知道原因。

我有一个java应用程序,它从ESB服务器获取加密和压缩的json字符串,然后应用程序解密并解压缩json字符串到对象列表。我们发布了带有Xms 256mXmx 720m的java应用程序,但是有时我们得到OutOfMemory异常导致异常是在解密和解压缩字符串时所有内存都被填充。大量的代码审查和优化已经完成,但由于我们无法控制ESB发送的数据,有时可能只有KB,有时可能是MB。

在这种情况下,动态增加内存将有所帮助。

我知道没有动态增加Xmx的选项,但为什么呢?并回答:

  

防止JVM消耗整个机器的可用内存。

如果机器有空闲内存,为什么不使用呢?

0 个答案:

没有答案