网站架构设计的意义,个人网站wordpress,鞍山做网站的,营销策划培训文章目录一、简介二、常用命令1、jps2、jps -l3、jps -q4、jps -m5、jps -v6、jps失效一、简介
JVM Process Status Tool#xff0c;显示指定系统内所有的HotSpot虚拟机进程。
功能#xff1a; 显示当前所有java进程pid的命令#xff0c;我们可以通过这个命令来查看到底启…
文章目录一、简介二、常用命令1、jps2、jps -l3、jps -q4、jps -m5、jps -v6、jps失效一、简介
JVM Process Status Tool显示指定系统内所有的HotSpot虚拟机进程。
功能 显示当前所有java进程pid的命令我们可以通过这个命令来查看到底启动了几个java进程因为每一个java程序都会独占一个java虚拟机实例。
缺点 不过jps有个缺点是只能显示当前用户的进程id要显示其他用户的还只能用linux的ps命令。 jps -help输出结果
rootyzh-zabbix-server:bin #jps -help
usage: jps [-help]jps [-q] [-mlvV] [hostid]Definitions:hostid: hostname[:port]命令格式
jps [options] [hostid]option参数
参数说明-l输出主类全名或jar路径-q只输出LVMID-m输出JVM启动时传递给main()的参数-v输出JVM启动时显示指定的JVM参数其中 [option]、[hostid] 参数也可以不写。 二、常用命令
1、jps 列出所有正在运行的java进程其中jps命令也是一个java程序前面的数字就是对应的进程id。
jps输出结果
rootyzh-zabbix-server:bin #jps
2153 Bootstrap
2697 Jps2、jps -l 输出应用程序main.class的完整package名或者应用程序jar文件完整路径名。
jps -l输出结果
rootyzh-zabbix-server:bin #jps -l
2496 sun.tools.jps.Jps
2153 org.apache.catalina.startup.Bootstrap3、jps -q
只输出LVMID。
jps -q输出结果
1282
24034
7763
24035
7765
45529
427
101744、jps -m
输出JVM启动时传递给main()的参数。
jps -m输出结果
10256 Jps -m
1282
24034 RemoteMavenServer36
7763 Launcher /Applications/IntelliJ IDEA.app/Contents/lib/netty-common-4.1.52.Final.jar:/Applications/IntelliJ IDEA.app/Contents/lib/netty-resolver-4.1.52.Final.jar:/Applications/IntelliJ
24035 RemoteMavenServer36
7765 Bootstrap start
45529
4275、jps -v 输出传递给JVM的参数。
jps -v输出结果
rootyzh-zabbix-server:bin #jps -v
2153 Bootstrap -Djava.util.logging.config.file/data/livy/zhengzhouyh/apache-tomcat-7.0.87/conf/logging.properties -Djava.util.logging.managerorg.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize2048 -javaagent:/data/livy/zhengzhouyh/JavaAgent_2.7.0_zzbank/lib/agent.jar -Djava.rmi.server.hostname10.0.1.21 -Dcom.sun.management.jmxremotetrue -Dcom.sun.management.jmxremote.port18999 -Dcom.sun.management.jmxremote.sslfalse -Dcom.sun.management.jmxremote.authenticatefalse -Dignore.endorsed.dirs -Dcatalina.base/data/livy/zhengzhouyh/apache-tomcat-7.0.87 -Dcatalina.home/data/livy/zhengzhouyh/apache-tomcat-7.0.87 -Djava.io.tmpdir/data/livy/zhengzhouyh/apache-tomcat-7.0.87/temp -agentpath:/opt/dynatrace/oneagent/agent/lib64/liboneagentloader.sologlevelconnone,tenantqng16405,tenanttokenVpaYLCqHrkVjEFBd,serverhttps://sg-us-west-2-34-214-95-212-prod16-oregon.live.ruxit.com/communication;https://sg-us-west-2-34-208-246-192-prod16-oregon.live.ruxit.com/communication;https://sg-us-west-2-35-161-237-123-prod16-
2860 Jps -Dapplication.home/usr/local/jdk1.8.0_144 -Xms8m6、jps失效 我们在定位问题过程会遇到这样一种情况用 jps 查看不到进程id用 ps -ef | grep java 却能看到启动的java进程。
要解释这种现象先来了解下 jps 的实现机制
java程序启动后会在目录 /tmp/hsperfdata_{userName}/ 下生成几个文件文件名就是java进程的 pid 因此jps列出进程id就是把这个目录下的文件名列一下而已至于系统参数则是读取文件中的内容。
我们来思考下 由于磁盘满了无法创建这些文件 用户对这些文件没有读的权限 因为某种原因这些文件或者目录被清除
出现以上这些情况就会导致jps命令失效。
如果jps命令失效而我们又要获取pid还可以使用以下两种方法
top | grep javaps -ef |grep java