JVM性能调优

JVM常用参数

  • -Xss 栈内存大小。
    设置单个线程栈大小、一般默认521-1024Kb。
    单个线程栈大小跟操作系统和JDK版本都有关系。
    -Xss = -XX:ThreadStackSize

  • -Xmx 最大堆内存。
    默认物理内存的1/4。
    -Xmx = -XX:MaxHeapSize

  • -Xms 初始堆内存大小。
    默认物理内存的1/64。
    建议 -Xms和-Xmx 的内存大小一致, 避免频繁分配调整内存空间。
    -Xms = -XX:InitialHeapSize

  • -XX:MetaspaceSize 元空间内存扩容触发FGC的初始阈值
    默认是21807104(约20.8m), 表示元空间不断扩容到该值时就会触发Full GC。
    如果该参数配置的太小,会频繁导致FullGC, 甚至OOM。

  • -XX:MaxMetaspaceSize 元空间最大内存大小
    元空间存储的时类的信息, 随着类加载越来越多,元空间会不断扩容, 指导-XX:MetaSpaceSize指定值, 就会触发Full GC。
    -XX:MaxMetaspaceSize代表元空间最大内存大小, 默认是几乎无穷大。
    建议:这两个值设置一样大小,具体可以在服务运行一段时间后查看服务实际占用大小。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容