linux命令查看性能资源相关
2015-11-24 17:00
267 查看
一、查看系统基本信息
uname -a # 查看内核/操作系统/CPU信息
head -n 1 /etc/issue # 查看操作系统版本, linux版本
cat /proc/cpuinfo # 查看CPU信息, 几核的
hostname # 查看计算机名
lsmod # 列出加载的内核模块
env # 查看环境变量
二、svn命令
1、svn log 查看日志信息
2、svn info 可以查看版本信息,查看文件信息
3、svn update 更新 (简写up)
4、svn switch (sw): 更新工作副本至不同的URL。
5、svn co 代码路径 下载svn代码
三、Linux下查看apache进程: ps -ef|grep httpd
Linux下查看Java进程:ps -ef |grep java
Linux下查看nginx进程:ps -ef |grep nginx
四、rpm -qa # 查看所有安装的软件包
rpm –qa|grep httpd 查看是否已安装了Apache
五、SAR命令
CPU存在瓶颈,可用sar -u 和sar -q来看,
I/O存在瓶颈,可用sar -b、sar -u和 sar-d来看
%iowait的值不能太高,如果%iowait的值过高,则CPU花在等待输入、输出上的时间太多,这意味着磁盘存在I/O瓶颈;
%idle的值处于40~100之间,一旦它持续低于30,则表明进程竞争的主要资源不是内存而是CPU。
六、jmap,分析内存
jmap -histo pid 在内存使用峰值前后分别dump一次,可以对比出GC回收了哪些对象。
1.sudo su admin -c "/opt/java_1.6.0.21/bin/jmap -histo pid > jmap.txt"
2.vi jmap.txt 一般查看前几项即可。
先ps -ef|grep java 找到pid
再进到自己目录 cd /home/yihan.zy
sudo -u admin jmap -histo pid > jmap.txt
七、jstack
用来查看当前web应用中存在的线程,以帮助定位程序中那些线程对CPU的使用率过高。
其使用也很简单,在个人账号下,使用sudo权限 ,执行sudo -u admin /opt/taobao/java1/bin/./jstack pid 即可将线程dump下来,进行分析。
命令本身使用起来很方便,关键是对dump下的线程作进一步的分析才是最重要的。
具体而言,当CPU比较忙时,我们通常需要关注的是runnable状态的线程,看系统到底在忙些什么;
而当CPU比较闲的时候,我们则需要关注waiting状态线程。
sudo -u admin /opt/java1/bin/jstack 17584 > q.txt
八、jstat:
可以用此命令查看gc情况。
语法结构如下:jstat [Options] vmid [interval] [count]
Options -- 选项,我们一般使用 -gcutil 查看gc情况
vmid -- VM的进程号,即当前运行的java进程号
interval-- 间隔时间,单位为毫秒
count -- 打印次数,如果缺省则打印无数次
实例: jstat -gcuti 16546 1000 4
16513为java进程号,可以通过(ps -ef|grep java找到),打印4次,每隔1秒打印一次
图中参数含义如下:
S0 -- Heap上的 Survivor space 0 区已使用空间的百分比
S1 -- Heap上的 Survivor space 1 区已使用空间的百分比
E -- Heap上的 Eden space 区已使用空间的百分比
O -- Heap上的 Old space 区已使用空间的百分比
P -- Perm space 区已使用空间的百分比
YGC -- 从应用程序启动到采样时发生 Young GC 的次数
YGCT-- 从应用程序启动到采样时 Young GC 所用的时间(单位秒)
FGC -- 从应用程序启动到采样时发生 Full GC 的次数
FGCT-- 从应用程序启动到采样时 Full GC 所用的时间(单位秒)
GCT -- 从应用程序启动到采样时用于垃圾回收的总时间(单位秒)
uname -a # 查看内核/操作系统/CPU信息
head -n 1 /etc/issue # 查看操作系统版本, linux版本
cat /proc/cpuinfo # 查看CPU信息, 几核的
hostname # 查看计算机名
lsmod # 列出加载的内核模块
env # 查看环境变量
二、svn命令
1、svn log 查看日志信息
2、svn info 可以查看版本信息,查看文件信息
3、svn update 更新 (简写up)
4、svn switch (sw): 更新工作副本至不同的URL。
5、svn co 代码路径 下载svn代码
三、Linux下查看apache进程: ps -ef|grep httpd
Linux下查看Java进程:ps -ef |grep java
Linux下查看nginx进程:ps -ef |grep nginx
四、rpm -qa # 查看所有安装的软件包
rpm –qa|grep httpd 查看是否已安装了Apache
五、SAR命令
CPU存在瓶颈,可用sar -u 和sar -q来看,
I/O存在瓶颈,可用sar -b、sar -u和 sar-d来看
%iowait的值不能太高,如果%iowait的值过高,则CPU花在等待输入、输出上的时间太多,这意味着磁盘存在I/O瓶颈;
%idle的值处于40~100之间,一旦它持续低于30,则表明进程竞争的主要资源不是内存而是CPU。
六、jmap,分析内存
jmap -histo pid 在内存使用峰值前后分别dump一次,可以对比出GC回收了哪些对象。
1.sudo su admin -c "/opt/java_1.6.0.21/bin/jmap -histo pid > jmap.txt"
2.vi jmap.txt 一般查看前几项即可。
先ps -ef|grep java 找到pid
再进到自己目录 cd /home/yihan.zy
sudo -u admin jmap -histo pid > jmap.txt
七、jstack
用来查看当前web应用中存在的线程,以帮助定位程序中那些线程对CPU的使用率过高。
其使用也很简单,在个人账号下,使用sudo权限 ,执行sudo -u admin /opt/taobao/java1/bin/./jstack pid 即可将线程dump下来,进行分析。
命令本身使用起来很方便,关键是对dump下的线程作进一步的分析才是最重要的。
具体而言,当CPU比较忙时,我们通常需要关注的是runnable状态的线程,看系统到底在忙些什么;
而当CPU比较闲的时候,我们则需要关注waiting状态线程。
sudo -u admin /opt/java1/bin/jstack 17584 > q.txt
八、jstat:
可以用此命令查看gc情况。
语法结构如下:jstat [Options] vmid [interval] [count]
Options -- 选项,我们一般使用 -gcutil 查看gc情况
vmid -- VM的进程号,即当前运行的java进程号
interval-- 间隔时间,单位为毫秒
count -- 打印次数,如果缺省则打印无数次
实例: jstat -gcuti 16546 1000 4
16513为java进程号,可以通过(ps -ef|grep java找到),打印4次,每隔1秒打印一次
图中参数含义如下:
S0 -- Heap上的 Survivor space 0 区已使用空间的百分比
S1 -- Heap上的 Survivor space 1 区已使用空间的百分比
E -- Heap上的 Eden space 区已使用空间的百分比
O -- Heap上的 Old space 区已使用空间的百分比
P -- Perm space 区已使用空间的百分比
YGC -- 从应用程序启动到采样时发生 Young GC 的次数
YGCT-- 从应用程序启动到采样时 Young GC 所用的时间(单位秒)
FGC -- 从应用程序启动到采样时发生 Full GC 的次数
FGCT-- 从应用程序启动到采样时 Full GC 所用的时间(单位秒)
GCT -- 从应用程序启动到采样时用于垃圾回收的总时间(单位秒)
相关文章推荐
- atoi 等相关函数的用法
- Linux中命令行编译java接口总是提示找不到符号的疑难杂症的解决
- Linux之select函数详解
- centos7安装配置puppet
- linux下的硬链接和软链接
- 如何将硬盘从现有的虚拟机转移到空的虚拟机上?
- Linux 下重启mysql服务
- Linux下Socket编程详解
- Linux grub 引导区修复记录
- 不同linux下两网卡绑定方法
- linux mysql自动备份
- 解决新版putty链接linux出现:Server unexpectedly closed network connection
- linux系统安装
- Linux新手入门:Unable to locate package错误解决办法
- Linux Advance--标准I/O的效率
- linux ssh 登录同时执行其他指令
- Linux-2.6.32.2 中固然有 DM9000 网卡驱动,但并不是完全的适合mini2440,导致挂载不上nfs文件系统
- 64位linux报错Could not initialize class java.awt.image.BufferedImage
- Linux内核中ioremap映射的透彻理解
- linux下安装mysql以及错误解决方案