xs和xms有什么区别_xm是什么缩写

(3) 2024-08-20 18:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
xs和xms有什么区别_xm是什么缩写,希望能够帮助你!!!。

  • -Xms 堆内存的初始大小,默认为物理内存的1/64。 -Xmx 堆内存的最大大小,默认为物理内存的1/4~1/2。 -Xmn 堆内新生代的大小。通过这个值也可以得到老生代的大小:-Xmx减去-Xmn。

-Xss 设置每个线程可使用的内存大小,即栈的大小。

在相同物理内存下,减小这个值能生成更多的线程,当然操作系统对一个进程内的线程数还是有限制的,不能无限生成。线程栈的大小是个双刃剑,如果设置过小,可能会出现栈溢出,特别是在该线程内有递归、大的循环时出现溢出的可能性更大,如果该值设置过大,就有影响到创建栈的数量,如果是多线程的应用,就会出现内存溢出的错误。

常规做法: Xms=Xmx=物理内存的1/2。 Xmn=1/2Xmx

举个栗子

APP_START_JVM_OPTION:::-Djsse.enableSNIExtension=false -Xmx2G -Xms2G
-Xmn1G -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -Dspring.config.location=classpath:application.properties,classpath:client.properties,classpath:client.properties
-D.log.config-location=classpath:application.properties -D.log.reload-scan-mills=40000 -D.log.enabled=true -D.server.web-environment=true -Duser.language=zh

异常:
如上参数设置不当,会导致fullgc频繁。

fullgc频繁的表现:CPU飙高、内存异常。也可能存在内存泄漏out of Memory。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复