当你想进行简单性能测试监控的时候应该如何选择监控命令?「建议收藏」

当你想进行简单性能测试监控的时候应该如何选择监控命令?「建议收藏」当你想进行简单性能测试监控的时候应该如何选择监控命令?

大家好,又见面了,我是你们的朋友全栈君。

此文已由作者赵慧莉授权网易云社区发布。

欢迎访问网易云社区,了解更多网易技术产品运营经验。

一、前言

在进行性能测试前,有些参数需要本地进行调试,不适合直接使用性能测试平台。主要通过监控CPU、内存、磁盘、网络情况来判断是否符合标准。接下来将通过CPU、内存、磁盘、网络情况的评估标准、常见的监控命令、常见会出现的一些问题来进行分析。

二、资源监控

1、监控CPU

  • CPU评估

    • user + sys [0%, 50%] :负载低

    • user + sys [70%, 90%] :负载高

    • user + sys [90%, 100%] :满负荷

    • CPU在满负荷状态下应符合7/3分布

    • CPU的负载不能高于CPU核心数目

  • 常用的监控命令

    • 整理CPU使用情况:top/vmstat/dstat

    • 每个CPU使用情况:mpstat

    • 进程CPU使用情况:pidstat

  • 举例

    • vmstat命令:用来获得有关进程、虚存、页面交换空间及 CPU活动的信息。(实例为:1s采集一次,采集4次后结束)Alt pic

    • dstat命令, 默认情况它会收集-cpu-,-disk-,-net-,-paging-,-system-的数据。(默认输入dstat等于输入了dstat -cdngy 1或dstat -a 1. 推荐使用 date && dstat -tclmdny 60 一分钟监视一次)Alt pic

    • mpstat最大的特点是:可以查看多核心cpu中每个计算核心的统计数据。     Alt pic

    • pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。Alt pic

  • 常见的CPU问题

    • 多核使用率不均匀

    • CPU使用率过高

    • CPU周期性的飙升

2、监控内存

  • 内存

    • 物理内存:真正的内存

    • 虚拟内存:为了满足物理内存不足,利用磁盘空间虚拟出的逻辑内存

    • 使用交换内存会带来磁盘IO和CPU开销的增加

  • 常用的监控命令

    • top

    • free

    • vmstat

    • cat /proc/meminfo

  • 举例

    • top Alt pic

    • freeAlt pic

  • 常见的内存问题

    • OOM

    • 内存暴增

    • swap升高

    • 内存泄漏

3、监控磁盘

  • 相关指标

    • IOPS:每秒读写次数,tps

    • bps:每秒读写块数,Blk_read/s , Blk_wrtn/s

    • %util:设备的利用率

    • svctm:平均每次设备I/O操作的服务时间

    • await:平均每次设备I/O操作的等待时间,排队时间+服务时间

    • avgqu-sz:平均I/O队列长度

    • await和svctm差距越大表示io的压力越大

  • 常用的监控命令

    • iostat

    • iotop

  • 举例

    • iostat选项-x,该选项将用于显示和io相关的扩展数据。Alt pic

4、监控网络

  • 需要关注点

    • 网络流量

    • 监听端口

    • 连接数

    • 句柄数

  • 常用的监控命令

    • netstat / dstat

    • lsof

    • sar

    • tcpdump

    • iptraf

  • 举例

    • tcpdump(tcpdump -i any -s 0 -l -w – port 8186|strings )Alt pic

  • 常见的网络问题

    • 能ping通但是服务不能访问

    • too many open files

三、总结

本文主要从监控CPU、内存、磁盘、网络四个方面进行分析,每方面的从评估标准、常见的监控命令、常见会出现的一些问题来进行阐述,希望能给大家带来基础的认识。

免费体验云安全(易盾)内容安全、验证码等服务

更多网易技术、产品、运营经验分享请点击

相关文章:
【推荐】 jq一个强悍的json格式化查看工具

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/107196.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 方差分析实用分析步骤总结怎么写_方差分析的基本步骤包括哪些

    方差分析实用分析步骤总结怎么写_方差分析的基本步骤包括哪些当我们想了解不同年级的学习态度是否有区别,进而提供有针对性的教学方案,又或者分析不同职业对某产品的购买意愿是否有差异,进而根据分析结果精准投放广告。以上这些分析两个及两个数据之间的差异情况都可以使用同一种分析方法——方差分析。01.概念方差分析用于定类数据(X)与定量数据(Y)之间的差异分析,例如研究三组学生(X)的智商平均值(Y)是否有显著差异。其中X的组别数量至少为2,也可以分…

    2022年10月15日
  • 嵌入式C语言面试题_c语言基础面试题

    嵌入式C语言面试题_c语言基础面试题预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)         #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何…

  • pycharm的控制台主题,Pycharm控制台

    pycharm的控制台主题,Pycharm控制台本篇文章帮大家学习Pycharm控制台,包含了Pycharm控制台使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。PyCharm有一个完整的代码完整的python控制台,可以在选项菜单:工具(Tools)->运行Python控制台(RunPythonConsole)中找到。使用上一章中的代码,如下所示-message=’GIEWIVrGMTLIVrH…

  • MySQL中DML语句和事务的概念「建议收藏」

    MySQL中DML语句和事务的概念「建议收藏」ML语句知识要点DML语句插入行到表中删除表中的行更新表中的行控制事务DML语句DML:DATAMANIPULATIONLANGUAGE(数据操纵语言),由INSERT、UPDATE、DELETE等语句构成,用来修改表中的数据INSERT语句1.带VALUES子句的INSERT语句INSERT[INTO]tbl_name[(col_name,…)]{VA…

  • leetcode_1049. Last Stone Weight II_[DP]

    leetcode_1049. Last Stone Weight II_[DP]

  • 如何解决Ubuntu 14.04编译make menuconfig时缺少’ncurses-devel’库[通俗易懂]

    如何解决Ubuntu 14.04编译make menuconfig时缺少’ncurses-devel’库[通俗易懂]今天在使用64位的Ubuntu14.04系统编译linux源码的makemenuconfig命令时,得到了一个错误的提示,说我没有安装相应的库:Unabletofindthencurseslibrariesortherequiredheaderfiles.’makemenuconfig’requiresthencurseslibraries.Instal…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号