简述:

运维监控会用到JDK的小工具

说明:

1. jps

用来查看当前运行的Java进程

我在eclipse中起了一个web 应用

或者用jps -l 可以查看的更清楚一点

jps -v

看到10376之后用taskkill指令关闭

2. jstat

虚拟机统计信息监视工具

先用jps查看当前启动的应用

于是使用

  1. cd C:\Users\Administrator\Desktop\jvm monitor

gcutil 监视Java堆状况,主要关注已使用空间占总空间的百分比,包括Eden区,2个survivor区,老年代、永久代,已用空间、GC时间合计

  1. 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

实时地查看和调整虚拟机各项参数

通过命令

  1. java -XX:+PrintFlagsFinal  > printFlagsFinal_result.txt

获取当前的jvm信息

从中可以看到

下面是调用system.getProperties() 的命令

  1. 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 内存映像工具

输入指令

  1. 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 自带工具试用(一)的更多相关文章

  1. JDK自带工具keytool生成ssl证书

    前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全. 百度了不少资料,看到JAVA的JDK自带生成SSL证书的工具: ...

  2. 利用JDK自带工具监控JVMCPU和内存指标

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  3. [转]JDK自带工具之问题排查场景示例

    最近看到了大量关于java性能调优.故障排查的文章,自己也写了一篇Java调优经验谈.接着此篇文章,其实一直打算写写一些常用调优工具以及它们的惯常用法的.后来在http://java-performa ...

  4. JDK自带工具之问题排查场景示例

    最近看到了大量关于java性能调优.故障排查的文章,自己也写了一篇< Java调优经验谈 >.接着此篇文章,其实一直打算写写一些常用调优工具以及它们的惯常用法的.后来在http://jav ...

  5. jvm性能监控(3)-jdk自带工具 jps jstack jmap

    一.概要: jps -l 查看现有的java进程 jps -l 显示所有正在运行的java进程id   jstack 查看Java线程      jstack -l pid; 做thread dump ...

  6. JDK自带工具介绍

    JDK工具一览表 工具名称 功能描述 appletviewer.exe 用于运行并浏览applet小程序. apt.exe 注解处理工具(Annotation Processing Tool),主要用 ...

  7. 利用JDK自带工具keyTool生成安全证书

    前言:说一下最近做的工作,主要利用iText给网页中生成好的html报表转化为pdf格式的文件,并且在其中加入水印,数字签名等等,这部分主要介绍安全证书的目的就是为了做数字签名部分用的. 下面利用jd ...

  8. JDK自带工具列表

    JDK是一个功能强大的Java开发套装,它不仅仅为我们提供了Java运行环境,还给开发人员提供了许多有用的开发组件(位于bin目录中,如下图所示).仅仅使用JDK,就能够解决我们在Java开发过程中遇 ...

  9. JDK自带工具一览表。妈妈再也不用担心你到处去下载小软件了~~

    原来JDK早早就给我准备好了要用到的工具..反编译,JVM性能监视.诊断. JDK(Java Development Kit)是Java程序员最核心的开发工具,没有之一. JDK是一个功能强大的Jav ...

随机推荐

  1. HTML to DOM

    Although you can now natively parse HTML using DOMParser and XMLHttpRequest, this is a new feature t ...

  2. 在js中使用createElement创建HTML对象和元素

    1.创建链接 <script language="javascript"> var o = document.body; //创建链接 function createA ...

  3. vc6.0 通过ADO(udl)连接sql 2008

    转载声明:本文转自http://blog.sina.com.cn/s/blog_7328b9dd0100pkbw.html茗之的博客   首先声明:本文是针对vc与sql菜鸟的,高人请让路. 本文讲解 ...

  4. C++ Bit Fields

    http://msdn.microsoft.com/en-us/library/ewwyfdbe%28v=vs.71%29.aspx Note An unnamed bit field of widt ...

  5. Swift学习资源

    原文: http://leancodingnow.com/swift-learning-resources/ Swift是Apple在今年的WWDC推出的一门新的编程语言,它的1.0版本跟着Xcode ...

  6. [MySQL复制异常]'Cannot execute statement: impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT.'

    MySQL复制错误]Last_Errno: 1666 Last_Error: Error executing row event: 'Cannot execute statement: imposs ...

  7. Codeforces Round #188 (Div. 1) B. Ants 暴力

    B. Ants Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/317/problem/B Des ...

  8. 使用foreach碰到的问题

    foreach($list as $k=>$v ){ ........... } 和下面: foreach($list as &$v){ ........ } 其实两者的结果是一样的,但 ...

  9. 安卓开发之使用viewpager+fragment实现滚动tab页

    闲着.用viewpager+fragment实现了个滚动tab..轻拍,以后会陆续发先小东西出来..爱分享,才快乐.demo见附件.. package com.example.demo; import ...

  10. Swift中的问号?和感叹号!

    Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化.如果在使用变量之前不进行初始化就会报错: var ...