• 系统平均负载


    • load average
    平均负载:单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数。
    • 可运行状态:正在使用cpu或等待cpu的进程,即ps命令下状态为R(Running或Runnable)的进程。
    • 不可中断状态:正在处于内核关键流程中的进程,这些流程是不可打断的,如等待硬件设备的I/O响应,即ps命令下状态为D(Uninterruptible Sleep,也成为Disk Sleep)的进程。
     
    • 当load average大于cpu的个数时,表明系统已经出现了过载。当load average高于cpu数量70%的时候,需要排查负载高的问题了,负载过高会导致进程响应变慢。
        
    • load升高的几种情况
    1. cpu密集型进程,使用大量的cpu会导致load升高。
    2. i/o密集型进程,等待i/o会导致load升高。
     
    • 工具
    • stress:linux系统压力测试工具
    • sysstat:linux性能分析工具,包含mpstat和pidstat等
    • mpstat:多核cpu性能分析工具,可以实时查看每个cpu的性能指标
    • pidstat:进程性能分析工具,实时查看进程的cpu、内存、i/o及上下文等性能指标
                    命令:
    • stress --cpu 1 --timeout 600 模拟cpu使用率100%的场景(--timeout表示执行时间)
    • stress -i 1 --timeout 600  模拟io 100%的场景
    • stress -c 8 --timeout 600  模拟8个进程
    • mpstat -P ALL 5 1  显示所有cpu的使用情况,5秒输出一组数据(-P ALL表示监视所有进程)
    • pidstat -u 5 1 查看每个 进程 的使用情况,5秒输出一组数据 (-u 表示cpu利用率)
  • 相关阅读:
    iOS SQLite函数总结
    转-NSUserDefaults 简介,使用 NSUserDefaults 存储自定义对象
    NSUserDefaults保存用户名和密码
    iOS 集成银联支付(绕过文档的坑,快速集成)-转
    iOS微信支付
    iOS生成PDF的关键代码-备忘
    python中的urlencode和urldecode
    python中%r和%s的区别
    ubuntu16.04安装wps
    二进制、八进制、十进制、十六进制之间的转换
  • 原文地址:https://www.cnblogs.com/lolau/p/11191697.html
Copyright © 2020-2023  润新知