这几天在阅读《System Performance》这本书,作者是Brendan Gregg,看到不少很有借鉴意义的地方,于是打算记录在博客中,以备后续翻阅。
资源的USE分别是:
U: Utilization 利用率
S: Saturation 饱和度
E: Errosr 错误数
硬件资源 | 类型 | 度量 |
---|---|---|
CPU | utilization | CPU利用率(TOP查看到的结果), 可以理解为1秒内繁忙时间的比例 |
CPU | saturation | 可以认为是可运行队列的长度 |
内存 | utilization | 通过当前可用内存来计算 |
内存 | saturation | 匿名页、swap等以及oom事件 |
网卡 | utilization | 收包吞吐量/最大带宽, 发包吞吐量/最大带宽(网卡能力) |
存储设备I/O | utilization | 设备繁忙时间/总时间 |
存储设备I/O | saturation | 等待队列的长度 |
存储设备I/O | errors | 设备错误数 |
软件资源 | 类型 | 度量 |
---|---|---|
互斥锁 | utilization | 锁被持有的时间/总时间 |
互斥锁 | saturation | 等待锁线程队列的长度 |
线程池 | utilization | 线程池繁忙的时间/总时间 |
线程池 | saturation | 等待线程池处理的请求队列的长度 |
进程/线程容量 | utilization | 系统中线程/进程的数量 |
进程/线程容量 | saturation | 等待系统创建的线程/进程的数量 |
进程/线程容量 | errors | 创建失败的数量 |
文件描述符容量 | utilization | 系统中描述符的数量 |
文件描述符容量 | saturation | 等待系统创建的描述符的数量 |
文件描述符容量 | errors | 文件描述符分配失败的数量 |