stress-ng ——linux下多功能压测工具,让你的服务器汗流浃背

2024-01-12 09:37:16 浏览数 (2)

关于压力测试,主要就是模拟在linux上的高负载情况,包括cpu、内存、磁盘、网络等,在这种情况下来观察高负载情况下的系统表现, 简单的压测,可以写一些计算的脚本,来让cpu和内存维持高使用率,也可以循环使用dd 等让磁盘等io变高。不同的场景就需要我们写不同的脚本,稍微有点麻烦。 今天要来推荐的工具是 linux下的压力测试工具,stress的升级版本stress-ng,与stress兼容,但是又比stress强大。官方地址如下:https://github.com/ColinIanKing/stress-ng废话不多说我们来使用一下康康

stress-ng 安装

  1. 执行命令 yum install stress stress-ng -y 安装即可

设备信息查询

首先我们需要获取我们服务器本身的硬件信息,常用的查询命令,可以参考下面

  • 查看cpu个数cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 输出的即为当前的物理cpu个数 。查询每个物理cpu的核数 cat /proc/cpuinfo| grep "cpu cores"| uniq 查看逻辑cpu的核数: cat /proc/cpuinfo| grep "processor"| wc -l (一般情况下,逻辑cpu=物理CPU个数×每颗核数)
  • 查询内存大小 : cat /proc/meminfo 或者 更直观的查看内存的命令: free -h 看total mem 即可
  • 查看磁盘大小df -h 一般来说挂载在 '/'下的size就是
  • 查询cpu使用 top
  • 查询内存使用情况 free -h 里的used

stress-ng的基础使用

  1. stress-ng --cpu 2 --timeout 10 压测2个cpu,持续10秒,然后我们再开一个终端,在里面输入 top -d 1 之后,再按1,即可看到当前2个cpu的占用率,你就会发现都是满的,当压测时间结束之后,cpu的使用率将就恢复正常了
  2. stress-ng --vm 2 --vm-bytes 1G --timeout 100s 压测内存,持续100秒,使用2个进程占用1G内存,你也可以换成500M什么的
  3. stress-ng --hdd 3 --hdd-bytes 20G --timeout 180s 压测磁盘io。压测磁盘io,开启3个磁盘IO进程,每次写20GB数据到磁盘,180秒后退出。相信这3个命令已经足够我们基本的进行压测使用了。 更多的使用方法,可以使用 stress-ng --help来查询

创作不易,如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。

0 人点赞