- 浏览: 290343 次
- 性别:
- 来自: 天津
文章分类
最新评论
-
狼子六:
已经开始用了
Java 枚举7常见种用法 -
相约的旋律:
方法一下面的"public static fianl ...
Java 枚举7常见种用法 -
kiddy2012:
...
[转载]程序员装B指南 -
fancy105:
写得很好,简单明了双全面!
Java 枚举7常见种用法 -
he_wen:
请问一下 G1算法是否在线上使用了?
Garbage First(G1) 日志分析工具
VisualVM介绍
VisualVM是集成了多个JDK命令工具的一个可视化工具,它主要用来监控JVM的运行情况,可以用它来查看和浏览Heap Dump、Thread Dump、内存对象实例情况、GC执行情况、CPU消耗以及类的装载情况。
在JDK Update7之后,VisualVM作为JDK的一部分发布,但同时VisualVM也发布独立的版本。VisualVM必须运行在JDK1.6以上的VM环境下,但可以用它来监控JDK1.4以上的JVM
下载地址:http://visualvm.java.net/download.html
配置jetty------匿名
修改启动脚本:
vi /srv/jetty6/mtct
在RUN_CMD后面追加:
#指定hostname 一般情况需要重新指定hostname,否则连接不成功 -Djava.rmi.server.hostname=192.168.0.147 #指定hostname 指定端口默认:1099 -Dcom.sun.management.jmxremote.port=8899 #禁止ssl连接 -Dcom.sun.management.jmxremote.ssl=false #禁止用户认证 -Dcom.sun.management.jmxremote.authenticate=false
另一种配置------认证配置
#指定hostname 一般情况需要重新指定hostname,否则连接不成功 -Djava.rmi.server.hostname=192.168.0.147 #指定hostname 指定端口默认:1099 -Dcom.sun.management.jmxremote.port=8899 #禁止ssl连接 com.sun.management.jmxremote.ssl=false #开启用户认证 com.sun.management.jmxremote.authenticate=true #认证用户名密码 -Dcom.sun.management.jmxremote.password.file=/opt/home/lichengwu/jvm/management/jmxremote.password #访问模式 -Dcom.sun.management.jmxremote.access.file=/opt/home/lichengwu/jvm/management/jmxremote.access
注意:jmxremote.password和jmxremote.access文件只允许启动用户名对该文件拥有读写权限 ,我们服务用root启动 所以:
[root@dog:management]# chmod 600 * [root@dog:management]# chown root:root * [root@dog:management]# ll total 8 -rw------- 1 root root 29 Nov 14 16:38 jmxremote.access -rw------- 1 root root 26 Nov 14 16:38 jmxremote.password [root@dog:management]#
如果权限设置不正确会报错:Error: Password file read access must be restricted
jmxremote.password模板:
[用户名] [密码] mtct ct.meituan test test
jmxremote.access模板:
[用户名] [权限] mtct readwrite test readonly
第三种配置------SSL
参考:http://download.oracle.com/javase/1.5.0/docs/guide/management/agent.html#SSL_enabled
- 在服务器上使用keytool创建密钥对
keytool是java平台自带的一个密钥和证书管理工具,使用keytool创建密钥对:keytool -genkey -alias jetty -keystore /opt/home/lichengwu/jvm/ssl/jettyKeyStore
按照提示输入相关信息(包括设定密码、姓、组织名等),这些信息是可以随便输入的,但从产品角度讲应该统一设定。输入的密码在今后操作中均需要使用。
- 导出公钥
keytool -export -alias jetty -keystore /opt/home/lichengwu/jvm/ssl/jettyKeyStore -file /opt/home/lichengwu/jvm/ssl/jetty.cert
- 将公钥导入至需要运行VisualVM的机器。(我的是windows 放在 Z:\jvm\ssl\jetty.cert)
keytool -import -alias jetty -keystore Z:\jvm\ssl\jettyKeyStore -file Z:\jvm\ssl\jetty.cert
- 修改jetty的启动脚本
将-Dcom.sun.management.jmxremote.ssl="false " 修改为: -Dcom.sun.management.jmxremote.ssl="true " ,并添加: -Djavax.net.ssl.keyStore=/opt/home/lichengwu/jvm/ssl/jettyKeyStore -Djavax.net.ssl.keyStorePassword=123456
- 使用如下参数启动VisualVM:
VisualVM -J-Djavax.net.ssl.trustStore=Z:\jvm\ssl\jettyKeyStore
监控
启动VisualVM,添加远程主机:
输入远程主机地址:192.168.0.147
修改端口,如果是默认端口,可可跳过
添加JMX连接
完成后双击:
发表评论
-
Java压缩/解压缩二进制文件
2013-02-08 13:56 5746在Java中提供Deflater和Inflater工具类来 ... -
java常用并发工具介绍
2013-02-06 23:22 1629本文主要介绍的工具包括: CountDownLa ... -
Garbage First(G1) 日志分析工具
2012-12-22 22:35 2219G1介绍:http://softbeta.iteye.com/ ... -
Spring源码阅读——Ioc初始化过程
2012-11-20 21:52 1277以web项目启动为例,介绍一下Ioc容器的初始化。 下面这个 ... -
Spring源码阅读——获得bean
2012-10-20 20:57 3195已XmlWebApplicationContext为例,从ge ... -
Spring源码阅读——BeanFactory体系结构
2012-10-10 18:10 2263以下是看代的码随笔,想到哪写到哪,没有组织逻辑,见谅见谅。 ... -
生成随机数组
2012-09-11 20:23 10971.要求生成一组n位的数字,0-9...(n个)之间的稠密集合 ... -
O(1)复杂度获得栈中的极值
2012-09-09 23:47 1316设计一个栈,O(1)复杂度实现入栈,出栈,栈中最大值,栈中最小 ... -
Garbage First(G1)介绍
2012-07-08 13:34 2245介绍: Garbage First(G1)致 ... -
ubuntu12.04上编译openjdk7
2012-06-13 15:31 4924获取源码 从openjdk代码仓库获取(比较慢) ... -
jinfo 查看、设置JVM参数
2012-04-25 15:36 5162用法: # jinfo -h Usage: ... -
一些参数,弥补CMS(Concurrent Mark-Sweep)收集器的缺点
2012-03-28 21:11 1686CMS缺点:http://softbeta.iteye ... -
[转载]PrintCompilation 参数解释
2012-03-27 13:59 1555英文不好,所以就不翻译了: b Blocking co ... -
《Head First 设计模式》读书笔记
2012-03-01 11:30 15501.策略模式(Strategy) ... -
解决jrobin图像中文乱码
2012-02-14 23:31 1165目前发现一种方法可以解决,做个标记。 利用字体: RrdG ... -
Java内存管理——垃圾收集概念及特点
2012-02-03 12:37 1068碎碎念,介绍Java内存管 ... -
[转载]hotspot源码(JDK7)
2012-01-19 19:25 1573源码结构图,方便理解: ├─agent ... -
跨平台获取java进程id(Process ID in Java)
2012-01-18 19:20 9170原创地址:http://blog.lichengwu.cn/ ... -
了解CMS(Concurrent Mark-Sweep)垃圾回收器
2011-12-27 20:13 121151.总体介绍: CMS(Concurrent Mark- ... -
fail-fast
2011-12-13 19:34 1050fail-fast:快速失败 一般情况下,在对集合进行迭代( ...
相关推荐
- **连接远程JVM**:在VisualVM的"Remote"选项卡中,输入远程主机的IP地址、端口号和认证信息,然后点击"Connect"。 - **监控远程应用**:连接成功后,远程JVM的监控功能与本地应用相同,可以进行性能监控、内存...
VisualVM是一款强大的JVM(Java Virtual Machine)监控和性能分析工具,由Oracle公司开发并提供。它集成在Java SDK中,默认位于%JAVA_HOME%\bin目录下,方便开发者直接使用。这款工具提供了丰富的功能,帮助Java...
VisualVM是一款强大的Java应用程序性能分析工具,由Oracle公司开发并维护,主要用于监控和调优JVM(Java虚拟机)的性能。...无论是本地还是远程JVM,VisualVM都能提供全面的监控和分析能力,是Java开发者的得力助手。
5. **远程连接**:除了本地应用,VisualVM还可以连接到远程的JVM,实现对分布式系统中各个节点的监控。 6. **采样和剖析**:采样模式能快速查看整体性能,而剖析模式则可以深入到代码级别,查看每个方法的执行时间...
启动后,VisualVM会自动发现本地的Java进程,也可以手动添加远程JVM。 总的来说,VisualVM是Java开发者必备的工具之一,它可以帮助优化代码、调试问题、理解应用程序的运行机制,从而提高软件的性能和稳定性。通过...
**VisualVM** 是一款由Sun Microsystems(现已被Oracle收购)开发的免费、开源的工具,用于监视和调试基于Java的应用程序。它集成了多种原本独立存在的命令行工具,如`jstat`, `JConsole`, `jstack`, `jmap`, 和 `...
2. **连接远程JVM**:如果需要监控远程Java应用,需要在目标机器上配置JDK的`jvm.options`文件,开启远程监控端口,然后在VisualVM中添加远程主机。 3. **选择分析模块**:根据需求选择合适的分析模块,例如选择...
5. **JMX支持**:VisualVM支持JMX(Java Management Extensions),可以连接到远程JVM,监控和管理远程应用的性能,这对于分布式系统的管理尤为有用。 6. **插件扩展**:VisualVM具有丰富的插件生态系统,用户可以...
6. **远程连接**:除了本地应用,VisualVM还可以连接到远程JVM,实现远程监控和诊断,方便在分布式环境中排查问题。 三、使用步骤 使用VisualVM通常包括以下几个步骤: 1. **安装与启动**:下载并安装VisualVM...
通过合理利用 VisualVM 及其集成的命令行工具,开发者能够有效地监控和分析 JVM 的内存使用情况,及时发现并解决内存泄漏、GC 效率低下等问题。掌握这些工具的使用方法,对于任何 Java 开发者而言都是必备技能。
它集成了多种监视和诊断功能,为开发者提供了全面了解JVM(Java虚拟机)运行状态的能力。最新版的VisualVM 204针对Windows操作系统进行了优化,为开发者带来了更为高效、直观的使用体验。 VisualVM的核心功能包括:...
在v2.1.7版本中,VisualVM集成了多种性能监视器和分析器,使得开发者能够深入理解程序运行时的内存、CPU使用、线程状态以及类加载等方面的情况。 1. **主要功能**: - **JMX监控**:通过Java Management ...
6. **远程监控**:除了本地JVM,VisualVM还可以连接到远程服务器上的JVM,这使得在分布式环境中远程诊断成为可能。 7. **插件扩展**:VisualVM支持丰富的插件,例如NetBeans Profiler(用于更深入的性能分析)、JMX...
1. **性能监视**:VisualVM可以实时显示CPU使用率、内存消耗、线程状态、类加载、垃圾收集等信息,帮助开发者了解程序的运行状况,及时发现性能瓶颈。 2. **内存分析**:通过内存快照对比,VisualVM可以定位内存...
2. **连接本地或远程应用**:在主界面,可以选择"Local"连接本地应用,或者输入远程主机的地址和端口来连接远程JVM。 3. **数据收集**:选择需要监控的指标,如CPU、内存、线程等,JVisualVM会实时更新图表。 4. *...
在进行Tomcat远程监控时,需要在远程服务器上配置Java管理扩展(JMX),这涉及到在启动Java应用时添加特定的JVM参数来开启JMX远程连接。例如,需要设置JMX远程连接的端口号、是否启用SSL连接、是否启用用户鉴权等。...
5. **JVM诊断**:VisualVM可以连接到本地或远程的Java虚拟机,提供详细的诊断信息,包括CPU使用率、内存分配、线程状态等,这对于性能调优至关重要。 6. **源代码和资源文件**:压缩包内的文件可能包含了VisualGC...
VisualVM集成了多种监视和诊断功能,包括JVM(Java虚拟机)性能监控、线程分析、内存泄漏检测、类加载器分析以及JMX(Java Management Extensions)支持等。这款工具对于理解Java应用程序如何使用系统资源,尤其是...
jvisualvm是一款集成了多种JDK性能分析工具的综合性应用,包含了监视、分析、诊断和调优等功能。它能够实时显示JVM的运行信息,包括内存使用情况、线程状态、类加载、垃圾收集、CPU使用率等,为开发者提供了一个直观...
4. **JMX Connectors**: 它们提供了访问MBean Server的通道,允许远程管理应用或JVM。 **JMX在JVM中的应用** 1. **JVM监控**: JMX可以通过MBeans提供JVM的性能指标,如内存使用情况、线程状态、类加载统计等。 2....