Java的JVM参数调优

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/u012431703/article/details/99293338

字段说明

-Xms1024m -Xmx1024m -Xmn256m -XX:SurvivorRatio=4 -XX:NewRatio=3 -XX:+PrintGCDetails -XX:+PrintCommandLineFlags -XX:UseParNewGC【完整字段】

-Xms1024m -Xmx1024m -Xmn256m -XX:+PrintGCDetails -XX:+PrintCommandLineFlags【常用字段】

-Xms1024m                初始值 1G
-Xmx1024m                  最大值 1G
-Xmn256m                 最小值 256M
-XX:SurvivorRatio=4    新生代   设置   eden区 1:4 (S0区+S1区) 比例
-XX:NewRatio=3           老年代   设置   eden区 3:1 老年代区
-XX:+PrintGCDetails       GC执行一次  打印一次日志
-XX:+PrintCommandLineFlags 打印更详细的GC日志
-XX:UseParNewGC        对eden区使用 并行回收机制

jvm 调优

free -g 以g类型 显示内存情况

top 任务管理器

ps -ef|grep -c xxx查询xxx总进程数

jstat -gc pid pid垃圾回收情况

jstat -gc pid i 以i毫秒查询pic的gc回收情况

jstat -gc pid i j 以i毫秒查询pic的gc回收情况查询j次

LINUX环境下

与Spring Boot项目同路径下新建一同名配置文件。

例如:当前项目为demo.jar,那么新建一文件demo.conf,内容如下:

#jvm运行参数
JAVA_OPTS="-server -Xms512M -Xmx512M -Xmn256M -XX:+PrintGCDetails -XX:+PrintCommandLineFlags"  

#项目运行参数
RUN_ARGS="--server.port=8081 --logging.level=INFO --spring.thymeleaf.cache=true --logging.file=/var/log/demo.log"

总体来说使用频率较高的application可以把内存适当设置大一点;使用频率为一般的可以设置低一点,比方521M;网关方面的线程池主要安装CPU的核心来设置。

猜你喜欢

转载自blog.csdn.net/u012431703/article/details/99293338