gpt4 book ai didi

java - 如何增加Jboss中的Heap和Perm内存?

转载 作者:行者123 更新时间:2023-12-02 11:56:17 24 4
gpt4 key购买 nike

真正的问题是我不知道如何根据服务器上可用的 RAM 内存来增加 Perm 大小内存。 我在配置文件中可以看到我为堆内存保留了8192Mb,MaxPermSize为1024m。

JAVA_OPTS="-Xms1024m -Xmx8192m -XX:MaxPermSize=1024m -Djava.net.preferIPv4Stack=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"

我的服务器上的可用总内存为 9Gb。据我所知,Perm内存空间不属于堆内存。我使用 8Gb 作为堆内存,1Gb 作为 Perm。因此,如果我想增加 Perm 内存,我需要减少堆内存,例如减少到 7GB,然后将 Perm 内存增加到 2GB,对吧?或者我可以为堆内存留出 8Gb,并将 PermSize 增加到 2Gb。

我这样做是因为我从服务器收到此错误。但我不确定问题是什么,因为正如您所看到的,Eden 空间已满,而且 PermGen 也已满。但问题可能出在配置上,如果我的服务器上有 9GB 可用 RAM,并且我为堆内存保留了 8GB,为永久内存保留了 1GB,那么为一个空间保留的内存可能没有被完全占用。

Heap
PSYoungGen total 1937408K, used 1119744K [0x0000000755500000, 0x00000007ff680000, 0x0000000800000000)
eden space 1119744K, 100% used [0x0000000755500000,0x0000000799a80000,0x0000000799a80000)
from space 817664K, 0% used [0x0000000799a80000,0x0000000799a80000,0x00000007cb900000)
to space 811008K, 0% used [0x00000007cde80000,0x00000007cde80000,0x00000007ff680000)
ParOldGen total 5592064K, used 5591839K [0x0000000600000000, 0x0000000755500000, 0x0000000755500000)
object space 5592064K, 99% used [0x0000000600000000,0x00000007554c7ce0,0x0000000755500000)
PSPermGen total 261120K, used 260769K [0x00000005c0000000, 0x00000005cff00000, 0x0000000600000000)
object space 261120K, 99% used [0x00000005c0000000,0x00000005cfea86c8,0x00000005cff00000)

最佳答案

您的 MaxPermSize=1024m,但 PSPermGen 只分配了 261m,因此您不使用全部。

从性能角度来看,将 Xms 设置为与 Xmx 不同通常不好。

您将所有物理内存用于堆和永久代。您应该为操作系统保留一些内存。您的服务器可能开始寻呼。

分析 gc-log 或使用 jstat、jconsole 或 jvisualvm 来监视内存使用情况可能会有所帮助。

关于java - 如何增加Jboss中的Heap和Perm内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47579035/

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