首页 > 系统相关 >Linux系统压力测试工具(命令行工具)

Linux系统压力测试工具(命令行工具)

时间:2024-11-04 18:46:22浏览次数:4  
标签:命令行 #- -- 测试 file Linux 测试工具 CPU size

Linux的命令行压力测试工具在做基准测试时很有用,通过基准测试对了解一个系统所能达到的最大性能指标,这些指标可以作为后续性能比较、优化评估的参考依据。

模拟CPU压力:

可以使用stress命令使CPU处于高负载状态。例如,通过stress -c 4命令(-c选项用于指定CPU核心数),会让系统的4个CPU核心都处于高负载运算状态。这对于测试CPU的性能极限以及系统在CPU高负载下的响应能力很有帮助。比如,在测试服务器性能时,通过这种方式可以确定服务器在高CPU负载下是否会出现卡顿或者崩溃的情况。

模拟CPU打满:

#-v 显示版本号
-v, --verbose be verbose
#-q 不显示运行信息
-q, --quiet be quiet
#-n 显示已完成的指令情况
-n, --dry-run show what would have been done
#-t --timeout N 指定运行N秒后停止
#--backoff N 等待N微妙后开始运行
-t, --timeout N timeout after N seconds
--backoff N wait factor of N microseconds before
work starts
#-c 产生n个进程 每个进程都反复不停的计算随机数的
平方根
-c, --cpu N spawn N workers spinning on sqrt()
#-i 产生n个进程 每个进程反复调用sync(),sync()用于
将内存上的内容写到硬盘上

模拟io瓶颈:

fio是一个灵活且功能强大的 Linux I/O(输入 / 输出)性能测试工具。它可以对磁盘、固态硬盘(SSD)、网络存储等各种存储设备进行多种类型的 I/O 操作测试,包括但不限于顺序读写、随机读写、混合读写等,并且能够模拟不同的 I/O 负载场景。

随机读 #fio -name=randread -direct=1 -iodepth=64 -rw=randread -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb

随机写 #fio -name=randwrite -direct=1 -iodepth=64 -rw=randwrite -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb

顺序读 #fio -name=read -direct=1 -iodepth=64 -rw=read -ioengine=libaio -bs=4k -size=1G -numjobs=1 - runtime=1000 -group_reporting -filename=/dev/sdb

顺序写 # fio -name=write -direct=1 -iodepth=64 -rw=write -ioengine=libaio -bs=4k -size=1G

创建初始化fileio文件:
# sysbench --test=fileio --file-num=16 --file-totalsize=2G prepare
接下来开始对这些文件进行测试,使用16个线程随机读
进行测试结果如下:
# sysbench --test=fileio --file-total-size=2G --file-testmode=rndrd --max-time=180 --maxrequests=100000000 --num-threads=16 --init-rng=on --
file-num=16 --file-extra-flags=direct --file-fsync-freq=0 -
-file-block-size=16384 run
测试结束后,记得执行cleanup,以确保测试所产生的文件都已删除:
#sysbench --test=fileio --file-num=16 --file-totalsize=2G cleanup

模拟大流量:

iperf3是一个用于网络吞吐量测量的工具,可以测试 TCP、UDP 或 SCTP 的吞吐量。

客户端
向目的地址10.20.81.33、5002号TCP端口,发一条
TCP流,打印间隔为2s,发包时间为1000s
#iperf3 -c 10.20.81.33 -p 5002 -i 2 -t 1000

服务端 
#iperf3 -s -p 5002 -i 2

模拟端口禁用:

查看禁用列表
#iptables -L -n --line-number
禁用出口端口
#iptables -A OUTPUT -p tcp --sport 18004 -j DROP
禁用入口端口
#iptables -A INPUT -p tcp --dport 18004 -j DROP
删除入口端口编号
#iptables -D INPUT 1
删除出口端口编号
#iptables -D OUTPUT 1

Stress工具还提供了对内存,磁盘I/O做压力测试的命令。

Stress-ng是stress的增强版。

Sysbench主要用于数据库服务器(如MySQL)的性能测试,但也可以用于测试系统的CPU、内存和磁盘I/O性能。

 

标签:命令行,#-,--,测试,file,Linux,测试工具,CPU,size
From: https://www.cnblogs.com/ailiailan/p/18526001

相关文章

  • Linux分区方案、分区建议
    一、Linux分区方案介绍1.标准分区:标准分区可以包含文件系统或交换空间,也能提供一个容器,用于软件RAID和LVM物理卷。2.BTRFS:Btrfs是一个具有几个设备相同的特征的文件系统。它能够处理和管理多个文件,大文件和大体积比的ext2,ext3和ext4文件系统。3.LVM(逻辑卷):创建一个LVM分区自动生......
  • 【linux命令】史上最全Linux命令,结合用例通俗易懂
    前言:目前关于Linux命令的文章往往存在内容不全的问题,导致初学者和中级用户在使用过程中遇到困难。许多文章仅涵盖基础命令,而缺乏对系统管理、网络配置、包管理和脚本编写等重要主题的详细讲解。此外,实际操作中的常见问题及其解决方案也常常未被提及,使得用户在遇到困难时无法......
  • linux的Miniconda安装
    下载官网下载安装包:官网安装终端输入以下命令安装shMiniconda3-latest-Linux-x86_64.sh出现如下页面,摁住回车出现如下页面,松开回车,输入yes继续回车输入yes安装完成!重启终端生效,或者执行下面命令立即生效:source~/.bashrc......
  • Linux配置定时任务,定时(每分钟)查看jar是否运行,没有运行则重新启动
    Linux配置定时任务,定时(每分钟)查看jar是否运行,没有运行则重新启动部署在Linux服务器上的服务,有时会因为其他原因(如内存溢出,误杀)导致服务被kill了,影响业务的正常运行。为避免这类问题发生,需要配置监控(定时查询服务是否还在运行中),当发现服务被kill掉了,则重新启动!1、准备工作Jav......
  • linux中怎么查看磁盘详细使用情况
    在Linux系统中,查看磁盘详细使用情况主要有以下几个命令和工具:1. df 命令df (diskfree)命令用于查看文件系统的总空间、已使用空间、剩余空间以及使用率等信息。以下是一些基本用法: #显示所有文件系统及其磁盘使用情况,以人类可读的格式(KB、MB、GB等) df-h ......
  • Linux查看当前服务占用CPU,内存以及硬盘使用情况
        执行top命令此处为当前服务器运行CPU等待率,越低速度越快。左侧展示每个集成的CPU使用情况,右侧为每个进程对应的运行内存使用其中:%us:表示用户空间程序的cpu使用率(没有通过nice调度)%sy:表示系统空间的cpu使用率,主要是内核程序。%ni:表示用户空间且通过nice调度过......
  • Linux操作系统之命令解释:ls -l|grep ^-|wc -l
    前言1、ls-l|grep^-|wc-l含义:Linux操作系统下查看当前目录内的文件数量(不包含子目录中的文件)(因为目录的权限首字母为d:代表文件夹)2、分段解释:ls-l:列出当前目录下所有文件。grep^-:grep用于筛选前面管道传来的信息,筛选标准:[行首后紧跟着一个-符号](^代表行首)(表示过滤......