Java JVM监控工具JConsole简介

Java JVM监控工具JConsole简介

jconsole命令

功能:打开java监视管理控制台

方法: jconsole [选项1] [选项2] …… [选项n]

常用选项:

-help        查看命令帮助

-interval=n 将监视图的刷新间隔时间设置为n 秒(默认值为 4 秒)

-J           对正在运行jconsole Java 虚拟机指定输入参数

 

实例:

1)打开java监视管理控制台

C:\Users\Administrator>jconsole

Java <wbr>JVM监控工具JConsole简介

 

 

 

弹出窗口中选择要连接的进程:

1.本地进程:选择“本地进程”,点击要连接的进程名称,点击连接

2.远程进程:选择“远程进程”,按输入框下方的提示输入必要的远程信息,输入“用户名”,“密码”,点击连接

 

本例选择本地进程,连接后打开如下界面

 

 

 Java <wbr>JVM监控工具JConsole简介

 

2)关于内存的相关说明

Java VM管理两种内存:堆内存(heap memory)和非堆内存(non-heap memory),两者都是在JVM启动时被创建。

 

堆内存:JVM为所有类实例和数组分配内存的运行时数据区。堆内存大小可以是固定大小或者动态变化的。垃圾收集器是一个会回收对象堆内存的自动化内存管理系统

 

非堆内存:包含被所有线程共享的方法区和JVM用于内部处理或优化的必备内存。存储每个类结构比如运行时常量池(constant pool),字段(field)和方法数据,方法和结构代码。方法区逻辑上是堆内存的一部分,但是依赖于具体实现,JVM可能不会对它进行垃圾回收。像对内存一样,方法区可固定大小或者大小动态变化。方法区中的内存不一定是连续的。

 

内存池“Eden Space”: 为大多数对象分配初始内存的内存池

 

内存池“Survivor Space”:包含每个End Space内存池中,经过内存垃圾回收后依然存在的对象的内存池

 

内存池中“Tenured Generation”: 包含在Survivor Space 中存在过一段时间的对象的内存池

 

内存池“Code Cache”: 包含用于编译,本地代码存储的内存的内存池

 

内存池“Perm Gen [shared-rw]: 包含所有虚拟机自身的反射数据(如类和方法对象)的内存池,类数据共享可读可写区。

 

内存池“Perm Gen [shared-ro]: 包含所有虚拟机自身的反射数据(如类和方法对象)的内存池,类数据共享只读区。

 

3)其他

右键等手动操作或看界面文字提示就知道了,这里就不多说了

 

参考连接:

http://my.oschina.net/chenleijava/blog/157682

 

posted @ 2014-11-18 19:32  授客  阅读(331)  评论(0编辑  收藏  举报