最大 Java 堆内存分配大小 - 有限制吗?

Max Java Heap Memory allocation size - are there limits?

-Xms100G -Xmx100G

我需要创建一个内存数据库。该应用程序是 Java 应用程序。想检查在应用程序可以分配大于 100G 的最大和最小 HeapSize 之前是否需要设置任何其他 JVM 参数。

根据@harold 的回复,我正在编辑 link 以便它对其他阅读本文的人有用 post。

https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/parallel.html#sthref30

您可以那样做,但请记住,从应用程序启动时分配 100G 会使应用程序启动速度变慢,因为它会尝试立即分配完整的内存块。

考虑对最小堆大小 (Xms) 使用较小的值,这样启动时间就不会受到影响,因为 VM 会根据需要增加堆的大小,直至达到其自身定义为最大值 (Xmx) 的值。