jvmstat监控jvm内存

1、下载jvmstat-3_0.zip;

2、配置环境变量JVMSTAT_JAVA_HOME为jdk目录E:\Program Files\Java\jdk1.5.0_12

3、监控本机:

     jps查看jvm进程id

E:\Program Files\Java\jdk1.5.0_12\jvmstat\bat>jps

7552 Bootstrap

3008 Jps

7916

7108

打开visualgc查看内存使用情况

E:\Program Files\Java\jdk1.5.0_12\jvmstat\bat>visualgc 7552

    

4、监控远程服务器

服务器新建安全策略文件,因为jdk对jvm做了jaas的安全检测,必须设置策略,使得jstatd允许网络操作。

新建jvmstat.policy,内容如下


grant codebase "file:${java.home}/../lib/tools.jar" {

permission java.security.AllPermission;

};

服务器运行jstatd命令

   $JAVA_HOME/bin/jstatd -J-Djava.rmi.server.hostname=10.8.1.126 -J-Djava.security.policy=/home/test/jvmstat.policy

客户端执行

     E:\Program Files\Java\jdk1.5.0_12\jvmstat\bat>visualgc.cmd [email protected]

31029为服务端jvm进程id,可通过jps命令列出

5、常见错误:

  如果没有建立安全策略会报错误:


Could not create remote object

access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write)

java.security.AccessControlException: access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write)

at java.security.AccessControlContext.checkPermission(AccessControlContext.java:374)

at java.security.AccessController.checkPermission(AccessController.java:546)

at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)

at java.lang.System.setProperty(System.java:725)

at sun.tools.jstatd.Jstatd.main(Jstatd.java:122)

  如果没有  -J-Djava.rmi.server.hostname=10.8.1.126 参数则客户端执行visualgc命令会报


Remote Exception attaching to rmi://[email protected]

  

时间: 2024-11-26 03:30:32

jvmstat监控jvm内存的相关文章

jstat监控JVM内存使用情况、GC回收情况

jstat -gcutil 2388 3000 6 每隔3秒打印一次pid为2388的堆内存的使用情况,共打印6次. S0- Heap上的 Survivor space 0 区已使用空间的百分比 S1 - Heap上的 Survivor space 1 区已使用空间的百分比 E   - Heap上的 Eden space 区已使用空间的百分比 O   - Heap上的 Old space 区已使用空间的百分比 P   - Perm space 区已使用空间的百分比 YGC - 从应用程序启动到采

VisualVM监控JVM

VisualVM远程监控JVM 内存溢出问题 方式一:jststd [[email protected]]# java -version java version "1.7.0_79" Java(TM) SE Runtime Environment (build 1.7.0_79-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode) [[email protected]]# cd /usr/java/j

tomcat完结篇,JVM状态监控与内存调优。

本篇合适对tomcat和JVM有一定了解的朋友. 常用的内置变量介绍: CATALINA_BASE  //用于设定可以具有写权限或者自定义部分的文件存放位置,适用场景,需要在一节点上启动多个tomcat实例,就可以定义多个CATALINA_BASE. CATALINA_OPTS //定义JVM的运行属性 JAVA_OPTS  //定义多个JVM相同运行属性. JAVA_HOME  //用于设定java或JDK运行时候的本地位置. JRE_HOME   //这是一个JAVA_HOME的别名. 了解

jconsole,jvisualvm监控jvm配置方法

在平常工作中监控jvm是一项必要的工作,但总是用命令行方式不能实时进行监控,jconsole就是一款可视化的即时监控工具.jvisualvm与jconsole用法基本一样. 个人倾向于使用jconsole,虽然jvisualvm界面更漂亮,但堆内存中每个区的使用情况不显示,只显示堆的总大小和已使用的大小,不能看到eden,surivor等详情使用情况,所以我一般使用jconsole来看堆内存更为详情的情况. 1.首先安装jdk,在bin目录下找到jconsole,双击打开. 2.一般采用远程安装

JBOSS最大连接数配置和jvm内存配置

一.调整JBOSS最大连接数. 配置deploy/jboss-web.deployer/server.xml文件 . <Connector port="8080" address="0.0.0.0" maxThreads="1600" minSpareThreads="100" maxSpareThreads="250" emptySessionPath="false" enabl

visualvm监控jvm及远程jvm监控方法

VisualVM是Sun的一个OpenJDK项目,其目的在于为Java应用创建一个整套的问题解决工具.它集成了多个JDK命令工具的一个可视化工具,它主要用来监控JVM的运行情况,可以用它来查看和浏览Heap Dump.Thread Dump.内存对象实例情况.GC执行情况.CPU消耗以及类的装载情况. Java开发人员可以使用 VisualVM创建必要信息的日志,系统管理人员可用来监控及控制Java应用程序在网络中的运行状况.    下载页面 : https://visualvm.dev.jav

Java千百问_07JVM架构(018)_如何监控jvm的运行情况

点击进入_更多_Java千百问 1.如何监控jvm的运行情况 了解jvm内存模型看这里:java内存模型是什么样的 了解jvm内存管理看这里:jvm是如何管理内存的 了解jvm垃圾回收机制看这里:java垃圾回收机制是什么 了解jvm内存优化看这里:java内存如何优化 我们通常使用Jdk工具来监控jvm的运行情况,当然目前有很多第三方产品是通过jdk提供的api来组织数据进行监控的.具体来说有如下监控软件: Jconsole jdk自带,功能简单,但是可以在系统有一定负荷的情况下使用.对垃圾回

【转】jvm 内存模型及内存调优

一,JVM内存模型概括 还有一个寄存器,线程运行于其上面 1.程序计数器 记录线程的执行位置,线程私有内存,唯一一个在Java虚拟机规范中没有规定任何OutOfMemoryError情况的区域 2.线程栈(VM stack) 栈的默认大小是1M -Xss2m 这样设置成2M 异常 :Fatal: Stack size too small 异常的引起一般是线程数目太多 3.本地方法栈(native stack) 即为一些Native方法分配的stack 异常:java.lang.OutOfMemo

jstat分析JVM内存

出处:http://liulinxia02.blog.163.com/blog/static/268687720117251501253/ Jstat 是JDK自带的一个轻量级小工具.全称"Java Virtual Machine statistics monitoring tool",它位于java的bin目录下,主要利用JVM内建的指令对Java应用程序的资源和性能进行实时的命令行的监控,包括了对Heap size和垃圾回收状况的监控.可见,Jstat是轻量级的.专门针对JVM的工