测试环境:nohup 运行 bash 任务实现长时间压力测试

nohup 运行 bash 任务实现长时间压力测试

使用 nohup 结合 bash 可以确保长时间运行的压力测试任务在后台持续执行,即使终端断开连接也不会中断。以下是具体实现方法:

编写压力测试脚本

创建一个 bash 脚本(如 stress_test.sh),包含具体的压力测试逻辑。例如模拟 CPU 或内存负载:

#!/bin/bash
while true; do
    # CPU 压力测试(使用 dd 命令模拟计算负载)
    dd if=/dev/zero of=/dev/null bs=1M count=1000
    # 内存压力测试(占用 1GB 内存 10 秒)
    stress-ng --vm 1 --vm-bytes 1G --vm-keep --timeout 10s
done

使用 nohup 启动脚本

通过 nohup 启动脚本并重定向输出到日志文件,避免占用当前终端:

nohup bash stress_test.sh > stress_test.log 2>&1 &

  • > stress_test.log 将标准输出重定向到日志文件。
  • 2>&1 将错误输出合并到标准输出。
  • & 让任务在后台运行。
验证任务运行状态

检查任务是否在后台运行:

ps aux | grep stress_test.sh

或查看日志文件内容:

tail -f stress_test.log

终止压力测试任务

找到进程 ID 并强制终止:

pkill -f stress_test.sh
# 或手动指定 PID
kill -9 <PID>

注意事项
  • 确保脚本中的压力测试工具(如 stress-ng)已安装。
  • 监控系统资源(如 tophtop),避免过度占用导致系统崩溃。
  • 对于分布式压力测试,可通过 SSH 在多台机器上并行启动脚本。

通过这种方法,可以稳定维持长时间的压力测试任务,适合验证系统在高负载下的稳定性或性能瓶颈。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值