曾经离开的人,以为一辈子也放不开,可后来还是发现,原来真的不会,离开谁就活不下去。
曾经说着的梦想,你也没能实现,可是却在实现梦想的努力中,找到了喜欢的那个自己。
最近需要参与一些java程序debug和性能调整方面的工作,jconsole是jdk自带的工具,比较好用,以下文章前面大部分翻译自: ,后面关于用户名/密码和使用ssl加密连接的部分是从其他地方搜集的资料并且进行了验证。
Jconsole简介:
Jconsole是一个JMX兼容的监视工具。它使用Java虚拟机的JMX机制来提供运行在Java平台的应用程序的性能与资源耗费信息。
开始jconsole
Jconsole应用程序位于JDK_HOME/bin目录下。
命令语法:
可以使用jconsole监视本地应用程序和远程应用程序。
注意:在开发阶段或者原型阶段,使用jconsole监视本地应用程序是很有用的,但是不建议在生产环境中使用,因为jconsole本身也将显著的消耗系统资源。推荐使用远程监视来将jconsole和被监视平台孤立开。查看jconsole详细语法:.
本地监视:
如果需要监控本地应用程序,那么启动jconsole使用的用户id必须和被监视程序的用户id一致。启动本地监控的命令语法如下:
Jconsole [processed]
得到进程号(PID)的办法:
Unix/Linux:使用ps查看java进程的PID
Windows:任务管理器查看java或者javaw进程的PID
也可以使用jps命令行工具 查看PIDs
例子:如果你发现notepad.jar应用程序的PID为2956,则可以通过如下命令启动jconsole:
jconsole 2956
jconsole和被监视的应用程序必须是使用同一个用户运行的。管理和监视系统使用操作系统的文件权限。
如果你没有指定PID,jconsole会自动的探测出本地运行的所有java应用程序并显示一个对话框让你选择你想监控的程序(见下一节)
远程监视:
使用如下命令启动jconsole进行远程监视:
jconsole [hostname:portNum]
Hostname是被监控系统主机名,portNum是当你启动JVM,打开JMX代理之后指定的端口号。详细信息见:
如果你没有指定主机名/端口号,那么jconsole会显示一个连接对话框(见下一节)来输入主机名和端口号。
连接JMX代理:
如果在启动jconsole的时候指定了要连接的JMX代理,它会自动的启动对指定JVM的监视。任何时候如果你想连接到另外一台主机,可以选择:Connection | New Connection并输入连接信息。
或者如果你没有输入代理,那么启动jconsole之后会出现连接对话框,对话框有三个tab页:
Local
Remote
Advanced
Local选项卡

Local选项卡列出了在本地系统上,使用与启动jconsole相同的用户运行的JVM及其PID、类/参数信息。选择需要坚实的应用程序,然后点击Connect
Remote选项卡

要监视远程JVM,需要输入:
Host name:远程主机名
Port number:启动JVM的时候指定的JMX代理(agent)端口号。
User name and password:使用的用户名和密码(仅在通过需要用户名/密码的 JMX代理监视JVM时需要)
关于设置JMX代理端口号的详细信息,见:
关于用户名和密码的详细信息,见:
要监视JVM本身使用的JVM,仅需设置主机名为localhost,端口号为0,然后点击Connect即可。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-44302-5.html
>相信
厚德载物
时以为只有万恶的旧社会才会多男找一个老婆