2---JVM启动参数有哪些?
也要以说JVM启动的时候可以调整哪些参数,来进行调优。JVM 为垃圾收集器、堆大小和运行时编译器提供与平台相关的默认选择。
性能取决于堆的大小、应用程序维护的实时数据量以及可用处理器的数量和速度.。
下面是调优的一些参数 使用命令行操作的:
1:最大暂停暂停时间目标 -XX:MaxGCPauseMillis=<nnn> :垃圾收集器需要<nnn>毫秒或更短的暂停时间,垃圾收集器将调整堆大小及与其相关的其他参数。默认情况,没有最大暂停暂停时间目标。
2:吞吐量目标 -XX:GCTimeRatio=<nnn> :垃圾收集时间与应用程序时间的比率是 1 / (1 + <nnn>),另外 垃圾收集所花费的时间是年轻代和老年代收集的总时间。
3:GC日志 -XX:+PrintGCDetails 垃圾收集的诊断信息写入标准输出 -XX:+PrintGCTimeStamps 给日志添加时间戳
4:堆大小:在虚拟机初始化时,为堆保留了整个空间, -Xmx 设置保留空间的大小,也就是最大堆大小, -Xms(初始堆大小)的值如果比保留空间的值小,则不是所有的保留空间都立即交给虚拟机,未给虚拟机的空间被标记为”虚拟“,那么堆的不同部分(老生代和新生代)可以根据需要增长到虚拟空间的极限。
5:设置老年代和新生代的比率:-XX:NewRatio=3 年轻代:老年化=1:3
6:选择垃圾收集器,也可叫作 选择GC算法
串行GC XX:+UseSerialGC并行GCXX:+UseParallelGC 并行压缩是并行GC的一个功能 默认启用 关闭使用-XX:-UseParallelOldGC并发GC -XX:+UseConcMarkSweepGC启用 CMS 收集器-XX:+UseG1GC启用 G1 收集器
7:指定GC日志文件 ‐Xloggc:gc.log
8:指定堆内存溢出时自动进行Dump ‐XX:+HeapDumpOnOutOfMemoryError 18 ‐XX:HeapDumpPath=/usr/local/
9:指定默认的连接超时时间 ‐Dsun.net.client.defaultConnectTimeout=2000
‐Dsun.net.client.defaultReadTimeout=2000
10:指定时区 ‐Duser.timezone=GMT+08
11: 设置默认的文件编码为UTF‐8 ‐Dfile.encoding=UTF‐8
附加一个小实践:使用G1启动一个hello程序
java ‐XX:+UseG1GC ‐Xms4g ‐Xmx4g ‐Xloggc:gc.log ‐XX:+PrintGCDetails ‐XX:+PrintGCDateStamps Hello
参考:https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/toc.html
查看JVM进程号:使用命令jps , 找到进程号可以使用jstack pid 来查看线程栈
使用jmap可以查看物理内存占用情况
2---JVM启动参数有哪些?的更多相关文章
- NetBeansRCP-添加/修改NetBeans的JVM启动参数
NetBeans运行的速度实在是不敢恭维.还好机器配置还可以,修改其JVM启动参数命令行,以期运行的更加顺畅. 那么如何修改NetBeans IDE的JVM参数呢? 1.到NetBeans IDE的安 ...
- JVM启动参数小结
一:JVM启动参数共分为三类: 其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容: 其二是非标准参数(-X),指的是JVM底层的一些配置参数, ...
- 业务系统的JVM启动参数推荐
关键业务系统的JVM启动参数推荐,原文链接请参见:http://calvin1978.blogcn.com/articles/jvmoption-2.html
- jvm启动参数设置 -Dfile.encoding=UTF-8 解决freemark乱码
今天一个spring boot应用windows跑起来后页面显示乱码,加上jvm启动参数为utf-8后,页面显示正常.
- jvm 启动参数设置(转载)
JVM启动参数 http://onlyor.iteye.com/blog/1722413 博客分类: java java java启动参数共分为三类其一是标准参数(-),所有的JVM实现都必须实现这些 ...
- Eclipse jvm启动参数在哪设置
学习并转载自https://jingyan.baidu.com/article/624e7459653ca534e8ba5a26.html Java是一门非常受欢迎的编程语言,Java的开发人员多数使 ...
- JVM 启动参数,共分为3类
JVM 启动参数,共分为3类: 类别 说明 标准参数(-) 所有的JVM实现都必须实现这些参数的功能,而且向后兼容: 非标准参数(-X) 这些参数不是虚拟机规范规定的.因此,不是所有VM的实现(如:H ...
- JVM系统属性 OS环境变量 JVM启动参数
JVM系统属性(System Properties) 1.不支持通过文件查看和设置系统属性 2.可以通过JDK自带的工具jvisulavm.exe查看 3.可以在Java程序中使用API来查看系统属性 ...
- 【java】java获取JVM启动参数 System.getProperty
java获取JVM启动参数 System.getProperty取 -D后的key即可 public class Test { public static void main(String[] arg ...
- Java JVM 启动参数
JVM 启动参数 java -Xmx4096m // 设置JVM最大可用内存为4096m. -Xms4096m // 设置JVM促使内存为4096m.此值可以设置与-Xmx相同,以避免每次垃圾回收完成 ...
随机推荐
- C++实现线性表-顺序表的合并操作代码
#include<iostream>#include<cstdlib>//C++动态分配存储空间using namespace std;#define OK 1#define ...
- 页面-vue-功能
一. 数组添加/修改数据 使用map this.list.map(i => { i.show = false return i }) 使用foreach this.list.forEach(i ...
- 手把手教你用Burpsuite+夜神模拟器抓安卓(Android 7)http+https包
(1)进入正题,bp证书下载(下载证书至电脑):打开bp,配置好代理,浏览器访问http://127.0.0.1:8080 下载证书,记住保存路径,注意别修改证书后缀(der)!!! (2)准备一个L ...
- Linux 第二节(基本命令)
www.linuxcool.com 一.ifconfig 1.Ip 地址 2.MAC地址 3.收到的数据包(RX) 4.发送的数据包(Tx) 二.uname uname -a //查看系统内核及 ...
- 20192305 王梓全Python程序设计实验二报告
20192305 王梓全Python程序设计实验二报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年4月 ...
- Navicat12安装包+破解方式(详细教程)
链接:https://pan.baidu.com/s/1vXQzT5nWD73lS5ZMGYYfeA 提取码:phhh 注意!!! 只有Navicat12版本才支持破解,其他版本无法破解. 1. 下 ...
- 使用DockerCompose部署微服务项目(基于Springboot搭建一个简易计数器)
准备Dockerfile FROM java:8 #基于jdk8的环境 COPY *.jar /app.jar #拷贝所有的jar包到/app.jar目录下 CMD ["--server.p ...
- Flutter showModalBottomSheet 顶部圆角
showModalBottomSheet( context: context, shape: const RoundedRectangleBorder( borderRadius: BorderRad ...
- C++调用Python_____用Python C API
项目需要用C++来处理用python处理的数据集,所以就需要在C++中调用python. 先介绍第一种方法,python文档中给出了python c api,可以实现C++与python的互动. 先新 ...
- Spring系列之面向切面编程-15
目录 AOP 概念 AOP 代理 @AspectJ 支持 启用@AspectJ 支持 使用 Java 配置启用 @AspectJ 支持 通过 XML 配置启用 @AspectJ 支持 声明一个方面 声 ...