JDK 自带工具试用(一)
简述:
运维监控会用到JDK的小工具
说明:
1. jps
用来查看当前运行的Java进程
我在eclipse中起了一个web 应用
或者用jps -l 可以查看的更清楚一点
jps -v
看到10376之后用taskkill指令关闭
2. jstat
虚拟机统计信息监视工具
先用jps查看当前启动的应用
于是使用
- cd C:\Users\Administrator\Desktop\jvm monitor
gcutil 监视Java堆状况,主要关注已使用空间占总空间的百分比,包括Eden区,2个survivor区,老年代、永久代,已用空间、GC时间合计
- jstat -gcutil 8832 >>jstat_result.txt
查询结果表明
在新生代Eden区使用了37.15%的空间
S0, S1 , Survivor0, Survivor1
O : Old
P: Permanent
YGC: Young GC 程序运行以来总共发生16次GC, 共耗时YGCT 13.247秒
FGC: Full GC 2次 , 耗时GCT 1.1.02秒
GC总耗时: 14.349秒
3. jinfo
实时地查看和调整虚拟机各项参数
通过命令
- java -XX:+PrintFlagsFinal > printFlagsFinal_result.txt
获取当前的jvm信息,
从中可以看到
下面是调用system.getProperties() 的命令
- jinfo -sysprops 12408 > jinfo_result.txt
jinfo查看参数
试着修改 CMSInitiatingOccupancyFraction
(CMS, 一种以获取最短回收停顿时间为目标的收集器, 关于JVM内存管理 参看官方文档
http://www.oracle.com/technetwork/java/javase/memorymanagement-whitepaper-150215.pdf)
通过jinfo查询得到该参数
附(记录几个常用的参数):
-Xms 初始堆大小 默认物理内存的1/64(<1GB)
-Xmx 最大堆大小
-Xmn 年轻代大小 (Eden和两个Survivor区的合计大小)
-Xss 每个线程的堆栈大小
4. jmap
Java 内存映像工具
输入指令
- jmap -dump:format=b,file=jmap_result.bin 12408
于是会生成jmap_result.txt文件
需要在eclipse中安装Memory Analyzer插件
http://download.eclipse.org/mat/1.4/update-site/
进入Memory Analysis perspective
而后
File -> Open Heap Dump
选内存泄露模式,于是生成一张 饼状图
(这里是引入,之后具体的检测会有新的文章做阐述)
5. jconsole
进入jdk目录,
运行
出现界面,
JDK 自带工具试用(一)的更多相关文章
- JDK自带工具keytool生成ssl证书
前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全. 百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具: ...
- 利用JDK自带工具监控JVMCPU和内存指标
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- [转]JDK自带工具之问题排查场景示例
最近看到了大量关于java性能调优.故障排查的文章,自己也写了一篇Java调优经验谈.接着此篇文章,其实一直打算写写一些常用调优工具以及它们的惯常用法的.后来在http://java-performa ...
- JDK自带工具之问题排查场景示例
最近看到了大量关于java性能调优.故障排查的文章,自己也写了一篇< Java调优经验谈 >.接着此篇文章,其实一直打算写写一些常用调优工具以及它们的惯常用法的.后来在http://jav ...
- jvm性能监控(3)-jdk自带工具 jps jstack jmap
一.概要: jps -l 查看现有的java进程 jps -l 显示所有正在运行的java进程id jstack 查看Java线程 jstack -l pid; 做thread dump ...
- JDK自带工具介绍
JDK工具一览表 工具名称 功能描述 appletviewer.exe 用于运行并浏览applet小程序. apt.exe 注解处理工具(Annotation Processing Tool),主要用 ...
- 利用JDK自带工具keyTool生成安全证书
前言:说一下最近做的工作,主要利用iText给网页中生成好的html报表转化为pdf格式的文件,并且在其中加入水印,数字签名等等,这部分主要介绍安全证书的目的就是为了做数字签名部分用的. 下面利用jd ...
- JDK自带工具列表
JDK是一个功能强大的Java开发套装,它不仅仅为我们提供了Java运行环境,还给开发人员提供了许多有用的开发组件(位于bin目录中,如下图所示).仅仅使用JDK,就能够解决我们在Java开发过程中遇 ...
- JDK自带工具一览表。妈妈再也不用担心你到处去下载小软件了~~
原来JDK早早就给我准备好了要用到的工具..反编译,JVM性能监视.诊断. JDK(Java Development Kit)是Java程序员最核心的开发工具,没有之一. JDK是一个功能强大的Jav ...
随机推荐
- (剑指Offer)面试题28:字符串的排列
题目: 输入一个字符串,打印出该字符串中字符的所有排列. 例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 思路: 把一个字符串看 ...
- 玩转变量、环境变量以及数学运算(shell)
变量和环境变量 var=value 给变量赋值,输出语句:$ echo $var或者是$ echo ${var},记住中间有个空格 例如:name="coffee" age ...
- git强制覆盖本地文件
git fetch --all git reset --hard origin/master
- SCROLLINFO结构体中fMask和nPage的理解
还是VC++中有关显示图像的问题. 我们在显示一幅比较大的图像时,要使用带标准滚动条的对话框.涉及对滚动条的操作就不得不提SCROLLINFO这个结构体.只看单词意思就这道这个结构体要储存滚动条的一些 ...
- c# implicit explicit关键字(隐式和显式数据类型转换)
implicit关键字用于声明隐式的用户定义类型转换运算符.(explicit反之)explicit则用于显示转换用户自定义类型.static implicit operator target_typ ...
- MySQL主从读写分离专题
主机A:192.168.1.101从机B:192.168.1.102 1.先登录主机 Amysql>GRANT REPLICATION SLAVE ON *.* TO slave_user@19 ...
- 【M14】明智运用异常规范
1.异常规范的使用场景是,承诺方法只抛出什么样的异常,或者不抛出异常.如果运行的时候,不满足承诺,C++自动调用unexpected方法,unexpected调用terminate方法,termina ...
- 简单的新浪微博OAuth认证实现
System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty(&q ...
- 怎样通过Java程序提交yarn的mapreduce计算任务
因为项目需求,须要通过Java程序提交Yarn的MapReduce的计算任务.与一般的通过Jar包提交MapReduce任务不同,通过程序提交MapReduce任务须要有点小变动.详见下面代码. 下面 ...
- 【Python】 做一个简单的 http server
# coding=utf-8 ''' Created on 2014年6月15日 @author: Yang ''' import socket import datetime # 初始化socket ...