系统级别:

下面这些工具利用内核的计数器在系统软硬件的环境中检查系统级别的活动。

vmstat: 虚拟内存和物理内存的统计,系统级别。

mpstat: 每个CPU 的 使用情况。

iostat: 每个磁盘I/O 使用情况,由块设备接口报告。

netstat: 网络按口的统计,TCP/IP栈的统计,以及每个连按的一些统计信息。

sar: 各种各样的统计,能归档历史数据。

进程级别 :

下面这些工具是以进程为导向的,使用的是内核为每个进程维护的计数器。

PS: 进程状态,显示进程的各种统计信息,包括内存和CPU 的使用。

top: 按一个统计数据(如CPU 使用)排序,显示排名高的进程。基于Solaris 的系

统对应的工具是prstat 。

pmap:将进程的内存段和使用统计一起列出。

一般来说,上述这些工 具是从/proc 文件系统里读取统计信息的。

系统级别 :

利用内核的跟踪设施,下面这些跟踪工具在系统软硬件的环境中检查系统级别的活动。

tcpdump: 网络包跟踪( 用libpcap 库)。

snoop: 为基于Solaris 的系统打造的网络包跟踪工其。

blktrace: 块I/O跟踪(Linux )。

iosnoop: 块I/O 跟踪( 基于DTrace )

execsnoop: 跟踪新进程( 基于DTrace )。

dtruss:系统级别的系统调用缓冲跟踪(基于DTrace)。

DTrace: 跟踪内核的内部活动和所有资源的使用情况(不仅仅是网络和块/O),支持静态和动态的跟踪。

SystemTap: 跟踪内核的内部活动和所有资源的使用情况,支持静态和动态的跟踪。

perf: Linux 性能事件,跟踪静态和动态的探针。

进程级别 :

下面这些跟踪工具是以进程为导向的,基于的是操作系统提供的框架。

strace: 基于Linux 系统的系统调用跟踪。

truss: 基于Solaris 系统的系统调用跟踪。

gdb: 源代码级别的调试器,广泛应用于Linux 系统。

mdb: Solaris 系统的- 一个具有可扩展性的调试器。

调试器能够检查每一个事件的数据,不过做这件事情时需要停止目标程序的执行,然后再

启动。

诸如DTrace、SystemTap和perf这样的工具,虽然更适合归纳到系统级别一类中,但是它

们都支持对单个进程做检查。


Linux bcc/BPF Tracing Tools

perf-tools

sar 命令

Linux Performance Tuning Tools

Linux Performance Benchmark Tools

Linux Static Performance Tools

Linux Performance Observability Tools

Linux Performance Tools


图片来源:

Linux 性能工具集的更多相关文章

  1. Linux性能工具介绍

    l  Linux性能工具介绍 p  CPU高 p  磁盘I/O p  网络 p  内存 p  应用程序跟踪 l  操作系统与应用程序的关系比喻为“唇亡齿寒”一点不为过 l  应用程序的性能问题/功能问 ...

  2. 程序员不可不知的Linux性能工具

    前言 在实际开发中,有时候会收到一些服务的监控报警,比如CPU飙高,内存飙高等,这个时候,我们会登录到服务器上进行排查.本篇博客将涵盖这方面的知识:Linux性能工具. 一次线上问题排查模拟 背景:服 ...

  3. Linux 性能工具 - sar学习

    简介 sar是一款在linux下的性能工具,可以观察到CPU,内存,IO,运行队列,每秒上下文切换等信息. 软件工具安装 #Ubuntu sudo apt-get install sysstat # ...

  4. Linux性能工具

    Brendan Gregg 目前是 Netflix 的高级性能架构师 ,他在那里做大规模计算机性能设计.分析和调优.他是<Systems Performance>等技术书的作者,因在系统管 ...

  5. linux 系统工具集

    Htop Htop是一款非常先进的交互式实时Linux进程监测工具.它非常类似Linux top命令,但是有一些丰富的功能特性,比如易于使用的界面,可用于管理进程.快捷键.进程的垂直和水平视图以及其他 ...

  6. Linux性能工具图册-便于查阅

    该图表示了,Linux系统哪种问题用哪种工具

  7. Linux 性能工具安装部署

    docker 一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡 在yum的ELRepo源中,有mainline(4.5) ...

  8. kali linux fuzz工具集简述

    模糊测试是一种自动化软件测试技术,涉及提供无效,意外或随机数据作为计算机程序的输入. 然后监视程序是否存在异常,例如崩溃,内置代码断言失败或潜在的内存泄漏. 通常,模糊器用于测试采用结构化输入的程序. ...

  9. LINUX 性能工具使用

    http://xuclv.blog.51cto.com/5503169/1184517

随机推荐

  1. 关于NSArray的去重

    提到去重,第一反应就是for或while循环来遍历处理. 然后有了几种思路: 1) 两个循环嵌套 对比 然后去重: 但是这种方法会数据丢失, arr为要去重的数组 ; i<arr.count; ...

  2. 10.1——pair,map,set,multimap,multiset

    map和set只允许相同的键出现一次,而multimap和multiset则允许出现多次. 1. 引言——pair类型: pair需要添加头文件utility头文件 make_pair<v1,v ...

  3. Python()- 面向对象的组合用法

    面向对象的组合用法 一个类中以另一个类的对象作为数据属性(一个类中引用另一个类的对象)一种 "有" 的关系: 比如:定义 1个人类 & 1个武器类 然后 张三 有 枪 李四 ...

  4. POJ 2391 多源多汇拆点最大流 +flody+二分答案

    题意:在一图中,每个点有俩个属性:现在牛的数量和雨棚大小(下雨时能容纳牛的数量),每个点之间有距离, 给出牛(速度一样)在顶点之间移动所需时间,问最少时间内所有牛都能避雨. 模型分析:多源点去多汇点( ...

  5. Intersecting Lines--POJ1269(判断两条直线的关系 && 求两条直线的交点)

    http://poj.org/problem?id=1269 我今天才知道原来标准的浮点输出用%.2f   并不是%.2lf  所以wa了好几次 题目大意:   就给你两个线段 然后求这两个线段所在的 ...

  6. maven pom.xml文件介绍

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...

  7. TList实现的任务队列

    TList实现的任务队列 var g_tasks: TList; type PTRecvPack = ^TRecvPack; TRecvPack = record // 接收到的原数据 socket: ...

  8. ubuntu磁盘分区和挂载

  9. 【C#】无损转换Image为Icon 【C#】组件发布:MessageTip,轻快型消息提示窗 【C#】给无窗口的进程发送消息 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体 【手记】调用Process.EnterDebugMode引发异常:并非所有引用的特权或组都分配给呼叫方 【C#】DataRowState演变备忘

    [C#]无损转换Image为Icon 如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle ...

  10. Linux下用Xdebug调试php

    Linux下用Xdebug调试php 博客分类: php PHPLinuxZendEclipseC# 为了调试PHP程序,安装一下xdebug. 官方网址: http://www.xdebug.org ...