JVM的监控工具之jconsole
JConsole(Java Monitoring and Management Console)是一种基于JMX的可视化监视、管理工具。管理的是什么?管理的是监控信息、永久代的使用信息、类加载等等
如果我们想监控本机的某一个java程序的运行,那么直接输入jconsole(windows下可以弹出图形化界面,linux 下无法弹出图形化界面)即可,
可以看到本机的java 进程,
点击其中一个就可以进入图形化界面,然后对其进行监控查看堆信息,以及进行死锁检测。
监控eureka 线程,里面有一栏是线程,下有检测死锁的功能,未检测到死锁,说明不存在死锁:
点击未检测到死锁,
然后监控查看deadlock进程,点击检测死锁,发现了三个死锁的线程,点击线程可以查看阻塞的地方,不同版本JDK这里可能有所差异,网上的部分资料说这里会有红色的提示,:
监控界面上还有执行GC的功能,点击GC后发现内存确实堆内存占用有所下降:
上面讲了如何监控本机的JAVA线程,如果想监控远程tomcat的的进程呢
需要在catalina.sh 中添加如下配置:
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.54.5" ## 配置远程的主机
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8888" ## 配置远程jMX端口
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.rmi.port=8888" ## 配置远程jMX端口
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticat=true" ## ## 配置远程jMX 是否需要认证
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false" ## 配置远程jMX是否需要ssl
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticat=true" 因环境不同而有所差异,我本机必须配置为true,false 访问不了
既然开启了远程的认证,必然存在认证的用户名和密码问题,密码配置参考博客:https://www.cnblogs.com/wanfeng/p/9582226.html
链接远程的tomcat:
远程tomcat的catalina.sh 配置如下:
JVM的监控工具之jconsole的更多相关文章
- JVM的监控工具之jvisual
VisualVM(All-in-One Java Trouble shootingTool)是到目前为止随JDK发布的功能最强大的运行监视和故障处理程序,并且可以预见在未来一段时间内都是官方主力发展的 ...
- JVM性能监控工具(一)-jdk命令行工具
转载:http://blog.csdn.net/top_code/article/details/51456186 当系统出bug需要定位问题的时候,知识.经验是关键基础,数据是依据,工具是运用知识处 ...
- java堆栈信息查看,以及JVM性能查看工具-jconsole+jmap
java-core P487 P515 chapter11,主要讲java的异常,里面很多内容收获良多,之前一直没注意过的. 一,Throwable类获得StackTraceElement ,可进行 ...
- JVM内存监控工具 Jconsole
-------------Jconsole监视远程的linux服务器上的tomcat ----------------------------- 1.linux服务器上的tomcat 的bin/cat ...
- JVM可视化监控工具jconsole以及jvisualvm的配置
使用jdk自带的jconsole.jvisualvm插件,监控远程linux服务器中tomcat的jvm情况 (jconsole.jvisualvm插件可查看堆内存变化情况,线程状态,CPU使用情况, ...
- jvm性能监控(4)–JVM的监控工具Jconsole
下面主要说一下怎么JConsole远程连接springboot 项目 java \-Djava.rmi.server.hostname=192.131.149.42 \-Dcom.sun.manag ...
- 深入理解JVM—性能监控工具
(转自:http://yhjhappy234.blog.163.com/blog/static/31632832201222691738865/) 我们知道,在JVM编译期和加载器,甚至运行期已经做了 ...
- JMV监控工具之JConsole
一.简介 JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,它是Java自带的简单性能监控工具.下面以对tomcat的监控为例,带领大家熟悉JConsole这个工具. 二.配置 ...
- JVM性能监控工具-Jvisualvm
用法:Jvisualvm是JDK自带的一款性能分析工具 使用方式: 1.配置好JDK环境变量 1.本地JVM监控略 2.远程JVM监控 用JMX对Resin内存状态进行监控 ,可以看到本地所有可监控的 ...
随机推荐
- go-爬虫-百度贴吧(并发版)
爬取百度贴吧的网页 非并发版 package main import ( "fmt" "io" "net/http" "os&qu ...
- Mac下安装adb
1.检查是否安装adb briandeMacBook-Pro:~ brian$ adb -bash: adb: command not found briandeMacBook-Pro:~ brian ...
- 盘点10个CAD难点,看看有没有让你崩溃的,解决方法一并奉上
蜀道难,难于上青天”,对于很多学习CAD的小伙伴来说CAD就跟蜀道一样,太难了,下面小编分享几个在学习CAD过程中会遇到的问题以及解决的方法,一起来看看吧! 1. 如何替换找不到的原文字体? 答:复制 ...
- 并发—JVM内部机制和外部机制处理方法
并发常见的编程场景,一句话概括就是,需要协调多个线程之间的协作,已保证程序按照自己原本的意愿执行.那么究竟应该如何协调多个线程? 这个问题比较宽泛,一般情况下,我们按照方式的纬度去简单区分,有以下两种 ...
- crm-全总结
1.什么是crm 客户关系管理系统 ,以客户数据为中心建立一个信息收集.管理.分析和利用的信息系统 2.业务逻辑相关使用crm-app完成 1)路由项目分发到crm-app (别名 传参 命名空间) ...
- E203 itcm
E203 itcm是64Kb,所以地址总线为16位,2^16=64Kb, 数据线宽度为64 bits(8 bytes),所以address width是16-3=13bit,ram depth 是2^ ...
- swif(六)swift闭包
// // main.swift // LessonSwiftSix // // Created by keyan on 15/9/13. // Copyright (c) 2015年 keyan. ...
- Django和前端用ajax传输json等数据
需要传输的是下图中所有的input中客户端设置的数据 整个页面是用js生成,代码不长,但是用了许多拼接,看起来开比较乱,页面的核心就是下面的部分,有一些关键参数部分就不放了,可以跳过这个 下面开始重点 ...
- SQL学习_SQL函数
常用的 SQL 函数 1. 算术函数 SELECT ABS(-2),运行结果为 2 SELECT MOD(101,3),运行结果 2 SELECT ROUND(37.25,1),运行结果 37.3 2 ...
- Tensorflow之MNIST手写数字识别:分类问题(2)
整体代码: #数据读取 import tensorflow as tf import matplotlib.pyplot as plt import numpy as np from tensorfl ...