JVM总结三

Java命令

作为一个合格的开发人员,不仅要能写好代码,还有一项很重要的技能就是排查问题。这里提到的排查问题不仅仅是在coding的过程中debug等,还包括的就是线上问题的排查。由于在生产环境中,
一般没办法debug,所以我们需要借助一些常用命令来查看运行时的具体情况,这些运行时信息包括但不限于运行日志、异常堆栈、堆使用情况、GC情况、JVM参数情况、线程情况等。

那么我们来介绍常用的Java命令,这些命令都是被存放在JDK安装目录的bin目录中,下面来介绍一下相关命令以及具体使用方式

jps:显示所有java进程pid

Q:quit man帮助命令退出使用q即可

jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况
jps类似linux/unix平台上上的ps命令,但是jps只查找查找所有的Java应用程序,包括即使没有使用java执行体的那种(例如,定制的启动器)。另外,jps仅查找当前用户的Java进程,而不是当前系统中的所有进程。

学习一个命令,先来看看帮助,使用jps -help查看帮助:
在这里插入图片描述
参数介绍:

  • -q 只显示pid,不显示class名称,jar文件名和传递给main 方法的参数
  • -m 输出传递给main 方法的参数,在嵌入式jvm上可能是null
  • -l 输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名
  • -v 输出传递给JVM的参数

常用指令

  • jps:显示当前用户的所有java进程的PID
  • jps -v 3331:显示虚拟机参数
  • jps -m 3331:显示传递给main()函数的参数
  • jps -l 3331:显示主类的全路径

jinfo:实时查看和调整虚拟机参数

配置信息包括JAVA系统参数和命令行参数,如果运行在64位虚拟机上运行,需要指定-J-d64参数,
如:jinfo -J-d64 -sysprops pid
由于打印jvm常用信息可以使用Jps命令,并且在后续的java版本中可能不再支持(注:jdk8中已经不支持该命令
查看帮助:jinfo -help
在这里插入图片描述
常用指令

  • info -flag CMSIniniatingOccupancyFration 1444:查询CMSIniniatingOccupancyFration参数值

jstat:监控虚拟机各种运行状态信息

jstat(JVM Statistics Monitoring Tool)是用于监控虚拟机各种运行状态信息的命令行工具。他可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据,在没有GUI图形的服务器上,它是运行期定位虚拟机性能问题的首选工具。
查看帮助: jstat -help
在这里插入图片描述
利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控。可见,Jstat是轻量级的、专门针对JVM的工具,非常适用。

jstat -<option> [-t] [-h<lines>] <vmid> [
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值