1、jvm 运行参数

1.1 jvm 参数类型

1.1.1 标准参数

-help

-version

1.1.2 -X参数(非标准参数)

-Xint

-Xcomp

1.1.3-XX参数(使用率高)

-XX:newSize

-XX:+UseSerialGC

2、标准参数

jvm 标准参数,一般都是很稳定的,在未来的jvm 版本中不会改变,可使用java -help 检索所有标准参数

2.1 常用标准参数命令

2.1.1 查看java 版本

java -version

2.1.2 通过-D 设置系统属性参数

java -Dkeyname=value

String value = System.getProperties("keyname")

2.1.3 -server 与 -client 参数

(1)区别:Server VM 的初始化堆空间大、默认使用并行垃圾回收器、启动慢,但是运行快

(2)Client VM 相对初始堆内存小、启动快、但运行慢

(3)64 位操作系统只支持server类型、不支持client类型、jvm根据系统自动选择

3、-X 参数

jvm -x参数是非标准参数 , 在不同版本的jvm 中可能有所不同 ,可以通过java -X 查看非标准参数

3.1 -Xint 、-Xcomp 、-Xmixed

-Xint 是解释器模式,每次都去直接执行字节码,不编译到本地、

-Xcomp 是编译模式 、全部编译到本地、包括只需执行一次的代码

-Xmixed 是混合模式,由JIT 编译器自动选择前面两种模式、jvm默认模式、推荐模式

4、-XX 参数

-XX参数也是非标准参数、主要用户jvm调优和debug操作

4.1 -XX 参数使用方式

4.1.1 boolean 类型

-XX:[+-]<name> : + 表示启动 、-表示禁用

4.1.2 非boolean类型

-XX:<name>=value

4.2 常用命令

4.2.1 -Xms、 -Xmx

-Xms: jvm堆内存初始大小、-XX:InitialHeapSize

-Xmx: jvm堆内存最大大小、 -XX:MaxHeapSize

java -Xms512m -Xmx2048m

4.2.2 查看jvm运行参数

4.2.2.1 运行java命令时打印jvm 运行参数

-XX:+PrintFlagsFinal

java -XX:PrintFlagsFinal -version -jar XXX.jar

结果中,值的操作符号 有 := 和 = ,其中= 为默认值 ,:= 为已被修改

4.2.2.2 查看正在运行的java进程的运行参数

使用jinfo命令查看

(1)使用jps 查看进程

(2)jinfo -flags <进程id>

jvm 优化的更多相关文章

  1. JVM优化

    1.堆大小设置 JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64 ...

  2. JVM 优化问题

    jvm 优化问题 JVM堆内存分为2块:Permanent Space 和 Heap Space. Permanent 即 持久代(Permanent Generation),主要存放的是Java类定 ...

  3. 给hive的metastore做JVM优化

    最近在测试环境下,hive的metastore不稳定,于是做一次JVM优化 在hive-env.sh中 export HADOOP_HOME=/opt/cdh/hadoop-2.6.0-cdh5.14 ...

  4. linux下jvm优化、tomcat调优

    系统环境:jdk1.8,apache-tomcat-8.5.35 一.jvm优化 进入 bin/catalina.sh,修改JAVA_OPTS配置: JAVA_OPTS="-server - ...

  5. 性能优化系列三:JVM优化

    一.几个基本概念 GCRoots对象都有哪些 所有正在运行的线程的栈上的引用变量.所有的全局变量.所有ClassLoader... 1.System Class.2.JNI Local3.JNI Gl ...

  6. 系统优化怎么做-JVM优化之VisualVM

    大家好,这里是「聊聊系统优化 」,并在下列地址同步更新 博客园:http://www.cnblogs.com/changsong/ 知乎专栏:https://zhuanlan.zhihu.com/yo ...

  7. 多核服务器的JVM优化选项(转载)

    原文链接 现在多核CPU是主流.利用多核技术,可以有效发挥硬件的能力,提升吞吐量,对于Java程序,可以实现并发垃圾收集.但是Java利用多核技术也带来了一些问题,主要是多线程共享内存引起了.目前内存 ...

  8. JVM 优化之逃逸分析

    整理自 周志明<深入JVM> 1, 是JVM优化技术,它不是直接优化手段,而是为其它优化手段提供依据. 2,逃逸分析主要就是分析对象的动态作用域. 3,逃逸有两种:方法逃逸和线程逃逸.   ...

  9. java架构之路-(JVM优化与原理)JVM之G1回收器和常见参数配置

    过去的几天里,我把JVM内部的垃圾回收算法和垃圾回收器.还剩下最后一个G1回收器没有说,我们今天数一下G1回收器和常见的参数配置. G1回收器 G1 (Garbage-First)是一款面向服务器的垃 ...

  10. Java虚拟机内存基础、垃圾收集算法及JVM优化

    1 JVM 简单结构图   1.1 类加载子系统与方法区 类加载子系统负责从文件系统或者网络中加载 Class 信息,加载的类信息存放于一块称 为方法区的内存空间.除了类的信息外,方法区中可能还会存放 ...

随机推荐

  1. Python 2 与 3 共存了 11 年,新年就要和它道别

    在 Python 3.9 都已经进入 dev 版本的 2020 年,Python 2 终于要和我们告别了. 2 and 3 Python 2 第一个版本发布于 2000 年 10 月 16 日,到今年 ...

  2. scikitlearn库中调用k-近邻算法的操作步骤

    1.k近邻算法可以说是唯一一个没有训练过程的机器学习算法,它含有训练基础数据集,但是是一种没有模型的算法,为了将其和其他算法进行统一,我们把它的训练数据集当做它的模型本身.2.在scikitlearn ...

  3. 手动搭建Vue之前奏:搭建webpack项目

    手动搭建vue项目 搭建vue前首先搭建webpack项目 首先你应当安装一下npm以及nodejs 安装完成后,进行如下操作: // 创建项目根目录 mkdir some_project_name ...

  4. 16 SQL Mode

    1.SQL Mode解决的问题:     a.通过设置SQL Mode , 可以完成不同严格程度的数据校验,有效地保障数据准确性.     b.通过设置SQL Mode 为ANSI模式,来保证大多数S ...

  5. python merge、join、concat用法与区别

     由于合并变化较大,以后函数可能会修改,只给出一些例子作为参考 总结: merge.join 1.当没有索引时:merge.join为按照一定条件合并 2.当有索引.并按照索引合并时,得到结果为两者混 ...

  6. 【微信小程序】数组操作

    Page({ data: { list:[{ id:1, name:'应季鲜果', count:1 },{ id:2, name:'精致糕点', count:6 },{ id:3, name:'全球美 ...

  7. springboot学习3事务控制

    springboot学习3事务控制 spring的事务控制本质上是通过aop实现的. 在springboot中使用时,可以通过注解@Transactional进行类或者方法级别的事务控制,也可以自己通 ...

  8. 基于AQS自己实现一个同步器

    前面说了这个多,我们可以自己尝试实现一个同步器,我们可以简单的参考一下ReentrantLock这个类的实现方式,我们就简单的实现一个不可重入的独占锁吧! 一.简单分析ReentrantLock的结构 ...

  9. 关于安装openfiler

    简介 Openfiler 由rPath Linux驱动,它是一个基于浏览器的免费网络存储管理实用程序,可以在单一框架中提供基于文件的网络连接存储 (NAS) 和基于块的存储区域网 (SAN).Open ...

  10. P1006 换个格式输出整数

    这道题相较于上一题来说就简单了许多.看题. 怎么感觉这道题有点类似P1002写出这个数.流程差不多,思路大致是先求出每一位上的数,然后根据 百十个 的顺序输出结果.题目比较简单,不做赘述,贴代码 代码 ...