jconsole 及 远程调试

Jconsole是JDK1.5引入的用于监控Java应用的工具,通过Swing界面展示堆内存、线程、类和CPU使用情况。它支持本地和远程连接。本地监控只需双击PID,而远程监控需要在启动参数中配置JMX端口。文章还介绍了JAVA内存的堆和非堆区域,以及如何在Eclipse中使用Jconsole进行远程监控。

 

v Jconsole 及远程调试
v JCONSOLE
v Jconsole 简介
v Jconsole 的使用方法
v 在项目中的实际应用远程调试
v 参考文献
v Jconsole 简介

Jconsolesun公司在JDK1。5 发行的一个工具,该工具在JAVA_HOMEbin目录下,是由Swing 做的界面。

v JCONSOLE 的使用
v Jconsole 查看本地 JAVA 进程

     启动jconsole我们会看到两个选项 本地的,和远程

   本地的使用方法很简单,双击PID,我们就可以看到堆内存,线程,类,CPU的使用情况。

  

v JCONSOLE 使用
v 内存

任何语言主要就是在内存的管理上有些差别,其他仅仅是语法不同,JAVA在内存管理上和我们学的C++ 差别很大

 C++ 分五个区 堆,栈,静态/全局,文字常量,代码区

 JAVA分堆/非堆

   堆分   Eden Span  线程池分配大部分对象

 

v JCONSOLE 的使用

Survivor Space     Eden Space 里经过垃圾回收后,没有被回收掉的垃圾

Tenured Generation          用于存放长时间回收不掉的垃圾

 

v JCONSOLE 的使用

 非堆内存

        code cache  放你编写的类

        Perm Gen     shared-rw 读写

        Perm Gen      shared-ro  只读

        Perm Gen    持久化内容

v JCONSOLE 的使用

线程

     可以看一下当前进程中的线程数量,每个线程阻塞次数,等待等情况

v Jconsole 的使用

可以看到当前类在VM中的数量,加载多少,卸载多少

 

v JCONSOLE 的使用
v VM 摘要

可以看到VM运行时间,JIT解释器

线程数,守护线程,类装载等信息

分配内存,垃圾收集器的情况

以及你的这个VM启动参数

 

 

v Jconsole 的使用
v Mbean

当前可以管理的资源

 

可以快速管理整个VM

v JCONSOLE 的使用

远程监控

需要在java_opt里加一些代码

-Dcom.sun.management.jmxremote.port=1090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false

 

 

v JCONSOLE 的使用
v SUN 公司提供了同类产品   jvisualvm.exe 这是 JCONSOLE 的一个增强版

 

v 远程调试
v 远程调试
set CATALINA_OPTS=-server -
Xdebug - Xnoagent - Djava.compiler =NONE - Xrunjdwp:transport = dt_socket,server = y,suspend = n,address =8787
v Linux

    startup.sh jpda  就可以,默认端口8000

v 远程调试

ECLIPSE上的使用注意事项

v 参考文献

http://java.sun.com/developer/technicalArticles/J2SE/monitoring/

怎么开发MBEAN 有兴趣的人可以找一下JSR文档

v JCONSOLE
î 谢谢大家
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值