1. 程式人生 > 其它 >JVM探祕(四)-效能監控jps工具詳解

JVM探祕(四)-效能監控jps工具詳解

技術標籤:JVMjavajvm

一、概述

jps(JVM Process Status Tool):可以列出正在執行的虛擬機器進 程,並顯示虛擬機器執行主類(Main Class,main()函式所在的類)名稱以及這些程序的本地虛擬機器唯一 ID(LVMID,Local Virtual Machine Identifier)。LVMID即虛擬機器例項執行時的程序號,比如我們同時執行三個Java程式,那麼將會有與之對應的三個Java虛擬機器例項,每一個虛擬機器例項都有一個ID識別符號。

二、使用方法

jps的命令格式如下:

jps [ options ] [ hostid ]
options:命令選項,用來對輸出格式進行控制
hostid:指定特定主機,可以是ip地址和域名, 也可以指定具體協議,埠。格式為:[protocol:][[//]hostname][:port][/servername]

關於jps命令options選項引數為
在這裡插入圖片描述

三、應用舉例

我們執行如下程式碼

import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;

public class Test {
    public static void main(String[] args) {
        try{
            ServerSocket serverSocket = new ServerSocket();
            serverSocket.bind(new
InetSocketAddress(8000)); Socket accept = serverSocket.accept(); System.out.println("收到客戶端連線....."); }catch (Exception e){ e.printStackTrace(); } } }

改程式碼啟動一個ServerSocket等待一個客戶端連線,由於accpet是阻塞方法,那麼在未收到客戶端連線時,不會退出阻塞,以便我們進行測試。現在我們開啟命令列視窗,輸入jps -l命令:

在這裡插入圖片描述
在這裡插入圖片描述
可以看到,jps顯示我們執行程式的LVMID以及對應的包含報名的主類名稱。
上述引數都比較簡單,讀者可自行嘗試其他options引數。
使用jsp -m則不會顯示包名。如圖所示:
在這裡插入圖片描述