性能测试——服务端监控工具nmon

news2025/1/16 20:10:32

在这里插入图片描述


这里写自定义目录标题

  • 一、性能监控工具nmon介绍
  • 二、nmon可监控的数据类型
  • 三、nmon特点
  • 四、Linux下安装
    • 1、检查安装环境
    • 2、下载nmon
    • 3、解压
  • 五、运行nmon
    • 1、启动nmon
    • 2、常用nmon快捷命令
    • 3、nmon命令行参数
    • 4、命令行例子
    • 5、重点
  • 六、查看 nmon 监控结果
    • 1、nmon_analyser 介绍
    • 2、下载nmon_analyser
    • 3、运行nmon_analyser

一、性能监控工具nmon介绍

做性能测试,服务器监控是至关重要的,使用nmon命令可以轻松捕捉系统资源的使用情况,便于做性能分析。

nmon是一种在 AIX 与各种 Linux 操作系统上广泛使用的监控与分析工具
它能在系统运行过程中实时地捕捉系统资源的使用情况,记录的信息比较全面
它可将服务器系统资源耗用情况收集起来并输出一个特定的文件,并可利用 excel 分析工具(nmon analyser)进行数据的统计分析

二、nmon可监控的数据类型

CPU使用率
内存使用情况
磁盘适配器
文件系统中的可用空间
页面空间和页面速度
异步I/O,仅适用于AIX
网络文件系统(NFS)
磁盘 I/O 速度、传输和读/写比率
服务器详细信息和资源
内核统计信息
消耗资源最多的进程
运行队列信息

三、nmon特点

1、nmon 运行不会占用过多的系统资源,通常情况下CPU利用率不会超过 2%
2、功能强大,监控数据类型全面
3、结合grafana之类的仪表图,可以更直观的实时展示所监控的数据
4、移植性、兼容性较好
5、无人值守监控
6、可以实时查看监控结果,也可以测试结束后本地查看监控结果

四、Linux下安装

1、检查安装环境

[root@mylinux1 ~]# uname -a
Linux mylinux1 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

2、下载nmon

我这里是3.10.0-1160.el7.x86_64

官方下载地址:https://sourceforge.net/projects/nmon/

3、解压

tar -zxvf nmon16m_helpsystems.tar.gz

在这里插入图片描述

五、运行nmon

1、启动nmon

为了运行时操作方便,我们将nmon_***文件改名为nmon,首先找到与操作系统对应的文件,我这里是nmon_x86_64_centos7,将其改名为nmon,命令如下:

[root@mylinux1 nmon]# mv nmon_x86_64_centos7 nmon

然后运行nmon就可以简单的敲./

./nmon

在这里插入图片描述

2、常用nmon快捷命令

q : 停止并退出 nmon
h : 查看帮助
c : 查看 CPU 统计数据
m : 查看内存统计数据
d : 查看硬盘统计数据
k : 查看内核统计数据
n : 查看网络统计数据
N : 查看 NFS 统计数据
j : 查看文件系统统计数据
t : 查看高耗进程
V : 查看虚拟内存统计数据
v : 详细模式
在这里插入图片描述
按多个快捷命令可以同时显示多项监控结果,直到将当前屏幕占满。

3、nmon命令行参数

上面的快捷命令只能将当前的系统资源实时显示在屏幕下,无法保存到文件中,如果要将结果保存到文件进行分析,需要用到命令行参数,启动nmon时,可以指定以下参数

f:监控结果以文件形式输出,**默认:**机器名_日期_时间.nmon
-F:和 -f 一样作用,不过要指定输出文件名
-s:采样频率,单位秒
-c:采样次数
-m:nmon 文件保存的目录
-t:显示资源占用率高的进程

4、命令行例子

每 10s 采集一次系统资源数据,共采集 6 次(1 min 内收集 6 次),将最终 nmon 文件生成在 /data目录下

./nmon -f -t -s 10 -c 6 -m /data
[root@mylinux1 nmon]# cd data
[root@mylinux1 data]# ls
mylinux1_230521_0041.nmon

将这个 .nmon 文件传输到本地,用于后续的结果分析

5、重点

一般来说不建议对稳定性测试(压力测试)使用 nmon 监控,因为生成的 nmon 文件超过10M时,分析工具会由于内存不足导致报错
如果必须进行的话,建议加大采样频次,降低采样次数(低于330次)

六、查看 nmon 监控结果

1、nmon_analyser 介绍

nmon 监控捕获的信息,一般用 nmon_analyser 来进行分析
nmon_analyser 由 IBM 提供, 使用 excel 的宏命令分析加载生成 excel 图表,展示资源占用的各项信息

2、下载nmon_analyser

官网:https://nmon.sourceforge.net/pmwiki.php?n=Site.Nmon-Analyser
解压后发现有两个文件
psd:说明文档
xlsm:宏文件,分析工具

[root@mylinux1 nmon_analyser]# unzip nmon_analyser_v69.zip 
Archive:  nmon_analyser_v69.zip
  inflating: nmon analyser v69_2.xlsm  
  inflating: NA_UserGuide v69.pdf    
[root@mylinux1 nmon_analyser]# ll
总用量 1400
-rw-r--r--. 1 root root 546610 1129 2021 NA_UserGuide v69.pdf
-rw-r--r--. 1 root root 208498 1118 2021 nmon analyser v69_2.xlsm
-rw-r--r--. 1 root root 674017 521 08:23 nmon_analyser_v69.zip

3、运行nmon_analyser

打开 nmon analyser v69_2.xlsm,记住一定要通过 office 或者 wps 用 excel 的方式打开哦,且需要启动了宏
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/557207.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI:Vue2和Vue3的对比

1. 什么是Vue.js以及Vue.js在前端开发中的重要性。 Vue.js是一个遵循MVVM(Model-View-ViewModel)模式的前端JavaScript框架,它采用了双向数据绑定和组件化的思想,使得前端开发变得更加简洁、高效、可维护。Vue.js由中国工程师尤雨…

chatgpt赋能Python-python_dlib

Python Dlib:从入门到实践 Python Dlib 是一个用于人脸检测、跟踪和姿态估计的高性能C库,提供 Python 接口方便调用。它是一个开源项目,被广泛应用于计算机视觉、图像处理和机器学习等领域。本文将从介绍Dlib的原理、特点以及应用场景等方面…

Rshiny基本函数(交互式web应用)

Rshiny基础函数 引言shiny包的下载shinyApp的构成ui的设计函数HTML类比img函数无法加载图片控件函数ui设计的输出对象 server总结 引言 R语言shiny包可以帮助我们轻松的制作交互式的web应用,并且可以搭建为独立的桌面可执行程序,非常方便制作和分享&…

人工智能(柴玉梅)第四章课后部分习题答案(仅供参考)

注释部分只是复习用,不是答案 第五题 注释:便于复习 本来想搜个类似的,结果发现r1这种人家都带括号!!!额,没括号那我就从前往后算了,按顺序算准没错~ CF(H)的…

Python logging使用

目录 logging模块 logging核心组件 logger handler StreamHandler:把日志内容在控制台中输出 FileHandler:把日志内容写入到文件中 filter formatter 注意日志级别的继承问题 logger.exception 上述样例的整体代码 日志的配置文件及其模板 lo…

用Python爬取了三大相亲软件评论区,结果…

小三:怎么了小二?一副愁眉苦脸的样子。 小二:唉!这不是快过年了吗,家里又催相亲了 ... 小三:现在不是流行网恋吗,你可以试试相亲软件呀。 小二:这玩意靠谱吗? 小三&#…

使用Gradle7.6.1 + SpringBoot3.0.2 + java17创建微服务项目(学习)

这是一个大胆的决定 这里是导航 技术栈开发工具一、创建gradle父子项目(deity)1.0 简单流程示意1.1、IDEA中主要图示1.1.1 项目结构图1.1.2 IDEA中 Gradle配置 1.2、deity父项目build.gradle文件1.3、deity父项目settings.gradle文件1.4、子项目build.g…

计算机底层知识

汇编语言(机器语言)的执行过程 汇编语言的本质:机器语言的助记符 其实他就是机器语言 计算机通电->CPU读取内存中程序(电信号输入) ->时钟发生器不断震荡通电 ->推动CPU内部一步一步执行(执行多…

elementUI,自定义表头,多层级表头,表头合并,行内容一致的合并行

先上效果: 1.自定义表头: 通过设置 slot"header" 来自定义表头。 slot-scope"scope" 这一行千万不要因为没有再template中使用到scope,vscode报红而删除,这会导致input框不能输入任何内容! &l…

软考网工计算题总结(一):总共27类题型,进来复习啦!

题型一: 1.地址编号从80000H到BFFFFH且按字节编址的内存容量为(5)KB,若用16KX4bit的存储芯片够成该内存,共需(6)片。 (5)A.128 B.256 C.512 D.1024 (6)A.8 B.16 C.32 D.64 【答案】B C 【解析】本题…

写一个自己的MyGPT app

chatGPT大火之后,国内外一众玩家撸起袖子热火朝天干了起来。 借助开源的GPT可以轻松的拥有自己的专属GPT,装装逼还是很好用的,也算赶一下chatGPT的风口。 这里使用ANYGPT,打造自已的GPT,AnyGPT API 开发者文档 语雀…

【STM32】基础知识 第十六课 窗口看门狗 WWDG 深入浅出

【STM32】基础知识 第十六课 窗口看门狗 WWDG 深入浅出 概述窗口看门狗 (WWDG)WWDG_SR 状态寄存器WWDG 配置与使用使用 WWDG 进行故障检测案例 概述 在嵌入式开发中, 可靠性和稳定性是至关重要的. 这就是为什么许多单片机, 比如 STM32, 提供了窗口看门狗 (Window Watchdog, WW…

redis 源码记录

正好最近时间富裕,看一看redis源码,简单的记录一下。也有可能说的是不全面的,自行斟酌,只能通过debug来简单的梳理本次测试流程,而不是全量的覆盖的所有测试用例,时不时更新,争取一天学一点点。…

基于Web的水果蔬菜销售系统的设计与实现(论文+源码)_kaic

摘 要 随着互联网经济与技术进程的不断推进,网上购物方式受到公众的普遍关注和欢迎。传统的樱桃线下销售模式缺陷不断暴露,难以满足公众不断加快的生活节奏和生活方式的需求。本文根据目前大众的实际需要,根据网上商城的特点、现状以及主要功…

Java 与排序算法(3):插入排序

一、插入排序 插入排序(Insertion Sort)是一种简单直观的排序算法,它的基本思想是将待排序序列分为已排序区间和未排序区间,然后每次从未排序区间取出一个元素,将其插入到已排序区间的合适位置中,使得插入…

【SpringBoot】八:Web服务---WebMvcConfigurer

文章目录 1.WebMvcConfigurer简介2. 页面跳转控制器3. 数据格式化4. 拦截器4.1 一个拦截器4.2 多个拦截器 1.WebMvcConfigurer简介 WebMvcConfigurer是SpringMVC xml配置文件的JavaConfig实现方式。 2. 页面跳转控制器 创建 SpringMVC 配置类: 3. 数据格式化 Formatter&…

计算机组成原理-存储系统-主存储器(芯片)和CPU连接

目录 一、SRAM和DRAM芯片 DRAM:栅极电容存储信息 SRAM:双稳态触发器存储信息 区别​编辑 二、ROM芯片 三、主存于CPU的连接 位扩展法 字扩展法 字位同时扩展法 译码器 四、双端口RAM和多模块存储器 4.1双端口RAM 4.2多模块存储器 4.2.1单体多字…

pthread多线程: 创建最简单的线程

文章目录 1. 目的1.1 不使用 Pthread 的情况1.2 使用 Pthread 的情况1.3 使用 Pthread 的好处 2. Pthread 创建线程的 API2.1 环境2.2 pthread_create()2.3pthread_join() 3. 创建最简单的线程3.1 要点3.2 代码 4. 创建多个子线程4.1 要点4.2 代码 5. 总结 1. 目的 Pthread 提…

计算机组成原理-存储系统-基本概论及组成

目录 一、存储器的层次化结构 二、存储器分类 存储介质 存取方式 信息可改性 三、性能指标 四、主存储器基本组成 基本的的半导体元件及原理 存储芯片的基本原理 一、存储器的层次化结构 二、存储器分类 存储介质 半导体存储器(主存,cache)、磁表面存储器(…

基于SpringBoot的SSMP的整合案例

基于SpringBoot的SSMP的整合案例 简单介绍模块创建创建实体类导入Mybatis-plus和druid的配置文件使用junit测试查询方法MP分页查询按照条件进行查询业务层Service开发业务层Service快速开发表现层开发表现层 实现分页查询表现层消息一致性的处理查询所有书本信息添加书本删除操…