统计和分析系统性能【IO CPU 内存】的工具集合

blktrace

http://www.oschina.net/p/blktrace

获取磁盘写入的信息

root@demo:~/install/percona-toolkit-2.2.1# debugfs -R 'stats' /dev/sda1

debugfs 1.41.11 (14-Mar-2010)

debugfs -R 'stats' /dev/sda1|grep Block

debugfs 1.41.11 (14-Mar-2010)

Block count:              5012992

Block size:               4096

Blocks per group:         32768

Mount -t debugfs none /sys/kernel/debug

dd if=/dev/zero of=/root/a.s bs=1024 count=1000

./blktrace -d /dev/sda -o - | ./blkparse -i -

8,0    0     1070    71.884893141  6075  M   W 575360 + 8 [dd]

8,0    0     1071    71.884894103  6075  A   W 575368 + 8 <- (8,1) 573320

8,0    0     1072    71.884894272  6075  Q   W 575368 + 8 [dd]

8,0    0     1073    71.884894481  6075  M   W 575368 + 8 [dd]

8,0    0     1074    71.884895481  6075  A   W 575376 + 8 <- (8,1) 573328

8,0    0     1075    71.884895621  6075  Q   W 575376 + 8 [dd]

8,0    0     1076    71.884895830  6075  M   W 575376 + 8 [dd]

root@demo:~/install/blktrace# debugfs -R "icheck `echo 573320/8|bc`" /dev/sda1

debugfs 1.41.11 (14-Mar-2010)

Block Inode number

71665 937613

root@demo:~/install/blktrace#

root@demo:~/install/blktrace# debugfs -R "ncheck 937613" /dev/sda1

debugfs 1.41.11 (14-Mar-2010)

Inode Pathname

937613 /root/a.s

此时通过lsof可以查到是谁在写/root/a.s

iotop

http://www.oschina.net/p/iotop

./iotop.py -p ##

这个工具是python脚本

和top的使用有些类似

strace ltrace

http://sourceforge.net/projects/strace/

http://ltrace.alioth.debian.org/

统计、跟踪程序使用库函数、系统函数

Ø 执行跟踪执行某个文件

n strace prog

n ltrace prog

Ø 已经执行的文件跟踪

n strace -p pid

n ltrace -p pid

n 这种情况有pthread的程序,附加会出现问题SIG_TRAP

Percona toolkit

https://www.percona.com/downloads/percona-toolkit/

http://blog.chinaunix.net/uid-20639775-id-3206802.html
percona-toolkit工具包的使用教程之开发工具类使用
http://blog.chinaunix.net/uid-20639775-id-3207926.html
percona-toolkit工具包的使用教程之性能类工具
http://blog.chinaunix.net/uid-20639775-id-3210834.html
percona-toolkit工具包的使用教程之配置类工具
http://blog.chinaunix.net/uid-20639775-id-3210843.html
percona-toolkit工具包的使用教程之监控类工具使用
http://blog.chinaunix.net/uid-20639775-id-3215742.html
percona-toolkit工具包的使用教程之复制类工具
http://blog.chinaunix.net/uid-20639775-id-3229211.html
percona-toolkit工具包的使用教程之系统类工具
http://blog.chinaunix.net/uid-20639775-id-3236839.html
percona-toolkit工具包的使用教程之实用类工具
http://blog.chinaunix.net/uid-20639775-id-3236864.html

Ø pt-diskstats

An interactive I/O monitoring tool for GNU/Linux.

Ø pt-ioprofile

Watch process IO and print a table of file and I/O activity.

pt-ioprofile --profile-pid=### --cell=sizes

Ø pt-summary

Summarize system information nicely.

sysstat

http://pagesperso-orange.fr/sebastien.godard/

./iostat -x 2

Report Central Processing Unit (CPU) statistics and input/output

statistics for devices and partitions.

#CPU

# ?秒  ?次

./pidstat -u 2 &> cpu.txt &

#内存

./pidstat -r 10 &> mem.txt &

#磁盘

./pidstat -d 2  &> io.txt &

#

./iostat -x 2 &> iostat.txt &

#

./mpstat -P ALL 2 &> mpstat.txt &

#

sudo mkdir /var/log/sa -p

sudo chmod 777 /var/log/sa

sudo cp sad* /sbin/.

./sar -u 2 &> sacpu.txt &

./sar -b 2 &> saio.txt &

#创建的线程数

#./sar -c 2 &> sathread.txt &

#进程队列和平均负载统计信息

./sar -q 2 &> saproc.txt &

#内存和交换空间

./sar -r 10 &> samem.txt &

如上的例子就是采样信息写入到文件中

top/htop

http://sourceforge.net/projects/htop/

htop 是一个 Linux 下的交互式的进程浏览器,可以用来替换Linux下的top命令。

内存

Linux系统没运行多少程序,显示的可用内存这么少?其实Linux与Win的内存管理不同,会尽量缓存内存以提高读写性能,通常叫做Cache Memory

http://www.ha97.com/4337.html

http://blog.csdn.net/heizistudio/article/details/25125061 这个文章讲解的更详细

统计和分析系统性能【IO CPU 内存】的工具集合的更多相关文章

  1. python之psutil模块(获取系统性能信息(CPU,内存,磁盘,网络)

    一.psutil模块 1. psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等) ...

  2. VPS性能测试:CPU内存,硬盘IO读写,带宽速度,UnixBench和压力测试

    现在便宜的VPS主机越来越多了,一些美国的VPS主机甚至给出1美元一月的VPS,堪比虚拟主机还要便宜,巨大的价格优势吸引不少人购买和使用,而近些年来国内的主机商也开始意识到便宜的VPS对草根站长的诱惑 ...

  3. 通过 thread dump 分析找到高CPU耗用与内存溢出的Java代码

    http://heylinux.com/archives/1085.html通过 thread dump 分析找到高CPU耗用与内存溢出的Java代码 首先,要感谢我的好朋友 钊花 的经验分享. 相信 ...

  4. Intel X86 32位CPU内存管理----《Linux内核源码情景分析》笔记(一)

    Intel X86 32位CPU内存管理 在X86系列中,8086和8088是16为处理器,而从80386开始为32为处理器,80286则是该系列从8088到80386,也就是16位处理器到32位处理 ...

  5. 性能测试分析过程(三)linux下查看最消耗CPU/内存的进程

    linux下查看最消耗CPU  内存的进程 1.CPU占用最多的前10个进程:  ps auxw|head -1;ps auxw|sort -rn -k3|head -10  2.内存消耗最多的前10 ...

  6. linux使用nmon监控、分析系统性能

    linux使用nmon监控.分析系统性能   一.概述 nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,相对于其它一些系统资源监控工具来说,nmon所记录的信息是比较全面的, ...

  7. Linux性能分析——分析系统性能相关的命令

    Linux性能分析——分析系统性能相关的命令 摘要:本文主要学习了Linux系统中分析性能相关的命令. ps命令 ps命令用来显示系统中进程的运行情况,显示的是当前系统的快照. 基本语法 ps [选项 ...

  8. Linux驱动开发常用调试工具---之内存读写工具devmem和devkmem【转】

    转自:https://blog.csdn.net/gatieme/article/details/50964903 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...

  9. Windows 性能监视器的基本指标(CPU,内存,硬盘参数)

    转载:http://kms.lenovots.com/kb/article.php?id=7045 Windows 性能监视器的基本指标(CPU,内存,硬盘参数) 作为一个系统工程师来说,要看懂监控的 ...

随机推荐

  1. SQL Server中使用Check约束提升性能

        在SQL Server中,SQL语句的执行是依赖查询优化器生成的执行计划,而执行计划的好坏直接关乎执行性能.     在查询优化器生成执行计划过程中,需要参考元数据来尽可能生成高效的执行计划, ...

  2. Pipedata3d - Welding Neck Flange

    Pipedata3d - Welding Neck Flange eryar@163.com Abstract. Pipedata3d show piping component data in ta ...

  3. WPF datagrid 加入图片

    <DataGridTemplateColumn Header="图像" Width="SizeToCells"> <DataGridTempl ...

  4. lintcode 落单的数(位操作)

    题目1 落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 链接:http://www.lintcode.com/zh-cn/problem/single ...

  5. ListView+CheckBox实现全选 单击效果

    在网上也找了一些案例,但都是用Map来实现的.我的是把对象绑定到当前控件上.代码稍微简洁. main布局文件:main.xml <?xml version="1.0" enc ...

  6. 配置putty自动登陆服务器

    putty是一款知名的SSH工具,可以用来登陆linux服务器,提供了终端.SSH是secure Shell的缩写.我之前也有一篇文章介绍这个话题:http://www.cnblogs.com/che ...

  7. SqlServer时间戳与普通格式的转换

    /********************************************** 时间戳转换(秒) ******************************************* ...

  8. 站在巨人的肩膀上---重新自定义 android- ExpandableListView 收缩类,实现列表的可收缩扩展

    距离上次更新博客,时隔略长,诸事繁琐,赶在去广州答辩之前,分享下安卓 android 中的一个 列表收缩 类---ExpandableListView 先上效果图: 如果想直接看实现此页面的代码请下滑 ...

  9. PHP运行及语句

    php开发网页需要存放在wamp根目录下的www文件夹中才可运行成功.同时wamp要处于运行状态. 无站点情况下打开方式: 网址栏中输入:localhost/文件名称 代码规范: 用<?php ...

  10. spring boot 配置启动后执行sql, 中文乱码

    spring.datasource.schema指定启动后执行的sql文件位置. 我发现中文乱码,原因是没有指定执行sql script encoding: spring: datasource: u ...