当前位置:

首页 > 软件教程 > Linux系统这些压测工具,你用过吗?

Linux系统这些压测工具,你用过吗?

作为一名运维人员,你是否遇到过这种场景?需要用工具测试系统cpu或内存占用高来触发告警,或者通过压测测试服务的并发能力。作为运维工程师,也可以通过这些命令复现故障场景。那么通过本文可以让你掌握常用的测试命令和工具。一、前言在某些情况下,为了定位和复现项目中的问题,必须使用工具进行系统性压力测试,以模拟和还原故障场景。这时测试或压测工具就变得尤为重要。接下来,我们将根据不同的场景来探讨这些工具的使用。二、测试工具2.1网络限速工具tctc是Linux中用于调整网络参数的命令行工具,可用于模拟各种网络条件,包

本文目录

    Linux系统这些压测工具,你用过吗?

    作为一名运维人员,你是否遇到过这种场景?需要用工具测试系统cpu或内存占用高来触发告警,或者通过压测测试服务的并发能力。作为运维工程师,也可以通过这些命令复现故障场景。那么通过本文可以让你掌握常用的测试命令和工具。

    一、前言

    在某些情况下,为了定位和复现项目中的问题,必须使用工具进行系统性压力测试,以模拟和还原故障场景。这时测试或压测工具就变得尤为重要。接下来,我们将根据不同的场景来探讨这些工具的使用。

    二、测试工具

    2.1 网络限速工具tc

    tc是Linux中用于调整网络参数的命令行工具,可用于模拟各种网络条件,包括限制网络带宽和延迟等。主要应用场景是在测试过程中,模拟真实世界中可能出现的网络环境,以评估系统在这些条件下的表现。网络限速工具通常用于模拟不同网络速度和稳定性,以便开发人员能够更好地了解其应用程序在各种网络环境下的行为。通过调整tc命令的参数,可以模拟出低带宽、高延迟、丢包等情况,从而帮助开发人员优化其应用程序,确保其在各种网络条件

    用法举例

    # 设置延时30ms
    sudo tc qdisc add dev eth0 root netem delay 30ms
    
    # 范围内延时(10-50ms)
    sudo tc qdisc add dev eth0 root netem delay 30ms 20ms 
    
    #设置丢包10%
    sudo tc qdisc add dev eth0 root netem loss 10%
    
    #删除丢包设置
    sudo tc qdisc del dev eth0 root netem loss 10%
    
    # 显示延时的设置 :
    sudo tc qdisc show
    sudo tc qdisc show dev eth0
    
    # 修改延时:
    sudo tc qdisc change dev eth0 root netem delay 40ms
    
    #随机产生1%的重复数据包
    sudo tc qdisc add dev eth0 root netem duplicate 1%
    
    #设置数据包乱序
    sudo tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%
    
    # 删除延时
    sudo tc qdisc del dev eth0 root netem delay 40ms

    实测效果,我们设置主机丢包延迟40ms,修改前延迟如下

    设置延迟40ms

    [root@knode1 ~]# sudo tc qdisc add dev ens33 root netem delay 40ms
    [root@knode1 ~]# sudo tc qdisc show dev ens33
    qdisc netem 8002: root refcnt 2 limit 1000 delay 40.0ms

    再次ping测试,效果还是很明显的,确实很好用,更多用法,小伙伴们自己去研究吧

    2.2 CPU 内存测试工具 – stress

    stress 是一个 Linux 下的压力测试工具,可以模拟 CPU 和内存的高负载情况,用于测试系统的稳定性。

    CPU/内存/磁盘测试工具通常用于评估系统在高负载条件下的稳定性,检测系统的性能极限。此外,在进行告警测试时,使用stress工具可以模拟系统在压力下的表现,帮助评估系统的可靠性和响应能力。通过这些工具,可以更全面地了解系统在不同负载情况下的表现,以便在必要时采取相应的优化措施,确保系统在实际运行中能够稳定可靠。

    工具安装

    sudo apt-get install stress #ubuntu系统
    yum install stress#Centos系统

    然后进行 CPU 和内存的测试:

    测试 CPU,持续运行 4 个进程

    # stress --io 2 --cpu 4 --vm 2 --vm-bytes 80M --timeout 1440m
    --cpu N:
    生成 N 个工作进程来施加 CPU 负载。
    
    # stress --cpu 8 会创建 8 个进程,每个都尝试占用 100% 的 CPU 时间。
    --io N:
    生成 N 个工作进程来执行 I/O 操作,增加 I/O 负载。
    
    # stress --io 4 会创建 4 个 I/O 生成进程。
    --vm N:
    
    # 生成 N 个工作进程来分配内存并定期写入随机数据。
    每个进程默认分配 256MB 内存。
    --vm-bytes B:
    
    #指定每个 --vm 工作进程分配的内存量。
    stress --vm 2 --vm-bytes 128M 会生成 2 个工作进程,每个分配 128MB 内存。
    --hdd N:
    
    # 生成 N 个工作进程来执行磁盘 I/O 操作。
    stress --hdd 2 会创建 2 个磁盘 I/O 生成进程。
    --hdd-bytes B:
    
    # 指定每个 --hdd 工作进程写入磁盘的数据量。
    stress --hdd 1 --hdd-bytes 1G 会创建一个工作进程来写入 1GB 的数据。
    --timeout T:
    
    # 指定 stress 运行的时间,T 是时间,可以是秒(默认)、分钟(加 m)、小时(加 h)。
    stress --cpu 4 --timeout 30s 会在 30 秒后停止 CPU 负载测试
    
    # 显示详细信息,包括生成的工作进程的状态。
    --verbose:

    实验:压测4个cpu,持续时间180s

    stress --cpu 4 --timeout 180s

    测试内存,分配 1GB 内存

    stress --vm 2 --vm-bytes 20G --timeout 360s
    --vm 2: 表示启动2个虚拟内存压力工作线程。
    --vm-bytes 20G: 每个工作线程使用的虚拟内存大小为20GB。
    --timeout 360s: 设置压力测试持续时间为360秒(6分钟)

    2.3 磁盘测速工具dd

    dd 是一个 Linux 下的命令行工具,用于复制文件并对数据进行转换。通过它,我们可以测试硬盘的读写速度。

    使用场景:硬盘测速工具常用于评估磁盘性能,选择最适合的存储方案,并检测磁盘是否存在性能瓶颈。

    要测试读取速度和写入速度,可以使用dd命令的不同参数。例如,要测试读取速度,可以使用if参数从文件读取数据,而要测试写入速度,可以使用of参数将数据写入文件。

    测试写入速度:

    dd if=/dev/zero of=/data/test bs=4k count=100k

    这会将零数据写入/data/test文件中,测试写入速度

    dd if=/data/test of=/dev/null bs=4k

    这会从/data/test文件中读取数据并将其丢弃,从而测试读取速度。

    注:也可以使用fio来测磁盘速度

    2.4. 流量访问压测工具 – ab

    ab 是 Apache 自带的一个小型工具,用于测试 HTTP 服务器的性能。使用场景:流量访问压测工具常用于评估 Web 服务器的性能,检测系统在并发访问下的表现。

    ab工具安装

    sudo apt-get install apache2-utils #ubuntu系统
    sudo yum install httpd-tools #Centos系统

    测试网站的并发连接数

    ab -c 10 -n 100 https://example.com/

    这将创建10个并发连接,每个连接执行100个请求。

    测试网站的请求速度

    ab -n 1000 -c 100 https://example.com/

    这将创建100个并发连接,总共执行1000个请求`.这时可以通过监控观察cpu和内存,用来初步评估平台的并发承载能力。

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    软件教程 场景
    相关文章 更多
    python 工具环境配置与排错:从虚拟环境到依赖验证的实操指南
    python 工具环境配置与排错:从虚拟环境到依赖验证的实操指南

    详解 python 工具的核心操作流程,包括虚拟环境创建、依赖安装与路径验证。提供基于官方文档的排错决策图与命令示例,帮助开发者解决环境冲突问题。

    苹果手机使用教程
    苹果手机使用教程

    新机到手第一步,自然是激活Apple ID、设置面容ID和锁屏密码;之后可以把主屏幕精简到只剩最常用的几个App,其余的都交给“App资源库”打理;至于隐私,给App授权照片时,现在有了“仅限选定照片”这个更精细的选择;如果觉得主屏幕页面太多,还可以把不常用的隐藏起来,既清爽又不影响功能。 刚拿到一

    蓝海书屋怎么查看阅读时长
    蓝海书屋怎么查看阅读时长

    蓝海书屋查看阅读时长的五种专业方法 “蓝海书屋的阅读时长到底在哪看?”最近这个问题确实被问得挺多。其实,掌握阅读时长不仅能帮你回顾自己的阅读旅程,更是管理阅读习惯、完成目标的好帮手。下面,咱们就系统梳理一下在蓝海书屋查看阅读时长的五种方式,操作清晰,一目了然。 官方入口在这里,有需要的可以先行访问:

    126邮箱网页版入口在线
    126邮箱网页版入口在线

    126邮箱网页版登录入口与使用全攻略 还在到处搜索126邮箱的登录入口?其实答案很简单:官方登录地址就是 https://mail.126.com。记住这个网址,通过浏览器直接访问,就能进入我们熟悉的登录界面了。 下面,就为大家详细拆解一下从登录到高效使用的完整流程,无论是电脑还是手机,都能轻松搞定

    如何进入百度地图网页版
    如何进入百度地图网页版

    百度地图网页版官网入口是https://map.baidu.com;支持全国街道级矢量底图、680万+POI、实时路况、多方式路线规划、自然语言检索及深度工具集成。 要使用百度地图的网页版,入口在哪里?其实答案很简单,直接访问 https://map.baidu.com 即可。这个链接背后,是一个功

    阿里巴巴1688商家登录入口
    阿里巴巴1688商家登录入口

    如果您正在寻找阿里巴巴1688的官方商家登录入口,请认准这个唯一的官方网址:https://www.1688.com。这里是所有商家进行采购、店铺管理与批发交易的核心官方通道。通过此入口,您可以安全、高效地开启数字贸易之旅。 网络上可能充斥着各种引导链接,例如“阿里巴巴批发网1688入口☜☜☜点击进

    PS网页版直接使用
    PS网页版直接使用

    PS网页版免费官方入口为https://www.adobe.com/products/photoshop/web.html,支持PSD编辑、实时协作、多色彩空间、智能抠图、AI修复、跨端同步、中文引导及SVG/PSD兼容等核心功能。 对于很多设计新手,或者只是偶尔需要处理图片的朋友来说,直接在线、免

    谷歌浏览器如何清除DNS缓存
    谷歌浏览器如何清除DNS缓存

    先处理Chrome的DNS缓存:在地址栏输入 chrome://net-internals/#dns,找到“Host resolver cache”区域,点击 Clear host cache。接着清理Socket连接:访问 chrome://net-internals/#sockets,依次点击

    企查查网页版官方入口
    企查查网页版官方入口

    企查查网页版官方入口与核心功能解析 企查查网页版官方入口是https://www.qcc.com,提供企业信息检索、关联图谱、行业分析及数据服务四大核心功能。 关于企查查网页版如何进入,以及它能提供哪些关键服务,不少朋友都希望获得一个清晰的指引。接下来,我们就系统地梳理一下企查查的官方入口及其几项核

    boss直聘怎么写自我评价
    boss直聘怎么写自我评价

    Boss直聘自我评价需紧扣岗位JD、量化成果、叠加精准身份标签、替换低效话术,并确保首句90字符内承载核心竞争力。 在Boss直聘平台,一份简历的自我评价部分如果缺乏抓力,往往意味着错失了黄金10秒。问题通常出在内容过于泛泛,没能精准对接招聘方的即时需求。那么,如何让这段文字成为你的“黄金广告位”?

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。