我有一个关于Java应用程序的问题。在Windows Server 2008 R2(64位)下使用64位JVM(1.60.0_20),应用程序在分配了2GB内存后就会挂起,即使将JVM设置更改为分配更多内存(-Xmx5000m)并等待超过12小时,它也无法超过这个标记。这是在一台拥有7.5GB可用内存的EC2实例上。
我有一个关于Java应用程序的问题。在Windows Server 2008 R2(64位)下使用64位JVM(1.60.0_20),应用程序在分配了2GB内存后就会挂起,即使将JVM设置更改为分配更多内存(-Xmx5000m)并等待超过12小时,它也无法超过这个标记。这是在一台拥有7.5GB可用内存的EC2实例上。
卡住了?没有抛出“OutOfMemoryError”吗? 如果您从2GB堆(“-Xms2g -Xmx2g”)开始,您能否启动应用程序?
我想知道您是否遇到了实例可用内存的限制。它是小实例吗?由于使用的内存量远远超过物理内存可用量,因此它将开始交换,导致系统崩溃。也许您需要一个大内存实例。