JVM参数

1-jvm调参案例

java -Xmx3072 -Xms3072M -Xmn2048M -Xss1M

-Xmx3072M:设置JVM最大可用内存为3072M。

-Xms3072M:设置JVM初始内存为3072M。此值可以设置与-Xmx相同,以避免 每次垃圾回收完成后JVM重新分配内存。

-Xmn2048M:设置年轻代大小为2G。增大年轻代后,将会减小年老代大小。不过此值 对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

-Xss1M:设置每个线程的堆栈大小。

JDK5.0以后每个线程堆栈大小为 1M,以前每个线程堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线 程。

2- jvm常见的参数设置

如果程序代码没有内存泄漏问题的话,我就需要考虑调整JVM启动时候堆内存设置。
在32位操作 系统下只能够设置到4G,但是在64位操作系统下已经可以设置到8G甚至更大的值。

-Xmx设置最大堆空间

-Xms设置最小堆空间

-XX:MaxNewSize设置最大新生代空间

-XX:NewSize设置最小新生代空间

-XX:MaxPermSize设置最大永久代空间(注:新内存模型已经替换为Metaspace)

-XX:PermSize设置最小永久代空间(注:新内存模型已经替换为Metaspace)

-Xss设置每个线程的堆栈大小
posted @ 2021-12-13 12:46  姚狗蛋  阅读(50)  评论(0编辑  收藏  举报