gpt4 book ai didi

java - Ubuntu 服务器中出现 OutOfMemory 错误

转载 作者:行者123 更新时间:2023-12-02 07:22:04 25 4
gpt4 key购买 nike

我有一个用 java 编写的服务器,在 Windows 7 中运行良好。但是当我在 Ubuntu 中安装相同的服务器时,它显示内存不足错误,服务器有 8 GB 内存,而我们的服务器仅使用 70% 的内存,它显示内存不足错误。并且CPU使用率在内存不足时达到峰值。

  1. 如何将剩余的 30% 内存分配给我的应用程序?
  2. 如何增加 Ubuntu 中分配给应用程序的内存限制?

内存不足错误不会在 Windows 中出现,仅在 Ubuntu 中出现。在 Windows 任务管理器中显示 100% CPU 使用率和完整 RAM 使用率。我希望在 Ubuntu 中实现这个性能。

最佳答案

如果你的意思是 Java 抛出 OutOfMemoryError ,你首先需要明白为什么。您可能想要选择像 VisualVM 这样的分析器(免费)或YourKit (不是免费的)看看内存中发生了什么。之后,您可以决定适当的操作,例如提高应用程序的内存效率或更改 JVM 设置以增加适当的内存分配。

首先,如果您的堆空间(老年代)不足,您可以使用 JVM 标志 -Xmx 调整可用的最大堆。例如,-Xmx1024m-Xmx1g 会将最大值设置为 1GB。如果是永久代(PermGen),您可以使用 -XX:MaxPermSize JVM 标志为其分配更大的整体堆 block ,例如 -XX:MaxPermSize=256m。请注意,增加永久代的大小将相应地减少其他堆段可用的内存量。

有关这些和其他 JVM 内存设置的完整详细信息可以在 Java application launcher page 上找到。和 HotSpot VM Options page (假设您使用的是 HotSpot VM)。

关于java - Ubuntu 服务器中出现 OutOfMemory 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14088686/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com