JVM 参数怎么调

JVM 参数怎么调,第1张

基于 JVM 的语言和应用程序汗牛充栋,不仅限于 Java , 还有 Scala , JPython, JRuby。对于 JVM 的调优是每个JVM 应用开发者必需要了解的。

先回顾一下 JVM 的结构

堆内部的分代

JVM 参数既多且杂,如何提纲挈领,避免挂一漏万呢?个人的想法是掌握原理,了解常用的参数就好了,以度量来驱动适用于你的应用程序的参数设置。

目的: 尽量减少停顿时间,释放出更多可用内存

Java 命令行选项一般分为三类

以 Cassandra 为例,它是的一个高性能的分布式NOSQL 数据存储系统,它设置了如下 JVM 参数:

一般来说,比较常用的方法是通过 JMX 和 GC log 来度量你的 JVM 参数设置是是否合理,一旦发现异常或者 OOM 要马上采取措施进行调整

关于 JVM 内存溢出的分析可以参考以前写的 内存溢出不可怕,手足无措才尴尬

服务器是8核16G要先设置成10G,即物理内存的一半再多加一些(建议跟最大堆大小设置成相同值,这样可以减少刚部署阶段的fullgc次数),然后运行一段时间再看容器的监控,看容器还剩多少内存。如果还剩很多,再调大一些,例如设置成12G,直到充分利用容器物理内存为止。设计JVM步骤如下:

1、打开win10系统的环境变量。

2、在系统变量中,新建变量JVM_OPTS,值设置为-Xms1024M-Xmx2048M-XX:PermSize=256M-XX:MaxNewSize=256M-XX:MaxPermSize=512M(具体根据实际情况进行配置)。

3、保存设置后,每次启动服务器都会按这个配置初始化JVM虚拟机内存。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7856606.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存