我们使用 OpenFire 来发送 XMPP 消息。我们遇到了一些内存问题(OutOfMemoryError),因此我们想增加内存。我知道如何利用 VM 选项来增加内存,我们能够将内存增加到 1.5Gb。
我们使用 32 位虚拟机,因为 OpenFire 似乎不支持 64 位虚拟机
我的问题是:有没有人能够将 OpenFire 内存增加到大于 1.5GB 的值?如果可以,请告诉我如何操作。
答案1
我猜你运气不好。
为什么我无法使用 32 位 JVM 获得更大的堆?
32 位 JVM 的最大理论堆限制为 4G。由于各种其他限制(例如可用交换、内核地址空间使用、内存碎片和 VM 开销),实际上限制可能会低得多。在大多数现代 32 位 Windows 系统上,最大堆大小范围为 1.4G 到 1.6G。在 32 位 Solaris 内核上,地址空间限制为 2G。在运行 32 位 VM 的 64 位操作系统上,最大堆大小可能更高,在许多 Solaris 系统上接近 4G。