search
HomeComputer TutorialsComputer KnowledgeHave you used these stress testing tools for Linux systems?

Have you used these stress testing tools for Linux systems?

Mar 21, 2024 pm 04:12 PM
toolScenesPressure testconcurrent accessMemory usage

Have you used these stress testing tools for Linux systems?

As an operation and maintenance personnel, have you ever encountered this scenario? You need to use tools to test high system CPU or memory usage to trigger alarms, or test the concurrency capabilities of the service through stress testing. As an operation and maintenance engineer, you can also use these commands to reproduce fault scenarios. Then this article can help you master commonly used testing commands and tools.

I. Introduction

In some cases, in order to locate and reproduce problems in the project, tools must be used to conduct systematic stress testing to simulate and restore failure scenarios. At this time testing or stress testing tools become particularly important. Next, we will explore the use of these tools according to different scenarios.

2. Testing Tools

2.1 Network speed limiting tool tc

tc is a command line tool in Linux used to adjust network parameters. It can be used to simulate various network conditions, including limiting network bandwidth and latency. The main application scenario is to simulate network environments that may occur in the real world during testing to evaluate the system's performance under these conditions. Network speed limiting tools are often used to simulate different network speeds and stabilities so that developers can better understand how their applications will behave in various network environments. By adjusting the parameters of the tc command, low bandwidth, high latency, packet loss, etc. can be simulated, thereby helping developers optimize their applications and ensure that they work under various network conditions

Usage examples

# Set delay 30ms
sudo tc qdisc add dev eth0 root netem delay 30ms

# Delay within range (10-50ms)
sudo tc qdisc add dev eth0 root netem delay 30ms 20ms

#Set packet loss 10%
sudo tc qdisc add dev eth0 root netem loss 10%

#Delete packet loss settings
sudo tc qdisc del dev eth0 root netem loss 10%

# Display delay settings:
sudo tc qdisc show
sudo tc qdisc show dev eth0

# Modify delay:
sudo tc qdisc change dev eth0 root netem delay 40ms

#Randomly generate 1% duplicate data packets
sudo tc qdisc add dev eth0 root netem duplicate 1%

#Set packet reordering
sudo tc qdisc change dev eth0 root netem delay 10ms reorder 25% 50%

# Delete delay
sudo tc qdisc del dev eth0 root netem delay 40ms

Actual measurement results, we set the host packet loss delay to 40ms, the delay before modification is as follows

Set delay 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 test again, the effect is still very obvious, it is really easy to use, for more usage, friends, please study it yourself

2.2 CPU memory test tool – stress

stress is a stress testing tool under Linux that can simulate high load conditions on the CPU and memory to test the stability of the system.

CPU/memory/disk testing tools are usually used to evaluate the stability of the system under high load conditions and detect the performance limits of the system. In addition, when performing alarm testing, the stress tool can be used to simulate the system's performance under stress and help evaluate the system's reliability and responsiveness. Through these tools, you can have a more comprehensive understanding of the system's performance under different load conditions, so that you can take corresponding optimization measures when necessary to ensure that the system is stable and reliable in actual operation.

Tool installation

sudo apt-get install stress #ubuntu system
yum install stress#Centos system

Then test the CPU and memory:

Test CPU, continuously run 4 processes

# stress --io 2 --cpu 4 --vm 2 --vm-bytes 80M --timeout 1440m
--cpu N:
Spawn N worker processes to impose CPU load.

# stress --cpu 8 creates 8 processes, each trying to take 100% of the CPU time.
--io N:
Spawn N worker processes to perform I/O operations and increase I/O load.

# stress --io 4 will create 4 I/O generation processes.
--vm N:

# Spawn N worker processes to allocate memory and write random data regularly.
Each process is allocated 256MB of memory by default.
--vm-bytes B:

#Specify the amount of memory allocated by each --vm worker process.
stress --vm 2 --vm-bytes 128M will spawn 2 worker processes, each allocated 128MB of memory.
--hdd N:

# Spawn N worker processes to perform disk I/O operations.
stress --hdd 2 creates 2 disk I/O generation processes.
--hdd-bytes B:

# Specify the amount of data written to disk by each --hdd worker process.
stress --hdd 1 --hdd-bytes 1G will create a worker process to write 1GB of data.
--timeout T:

# Specify the time for stress to run. T is the time, which can be seconds (default), minutes (add m), or hours (add h).
stress --cpu 4 --timeout 30s will stop the CPU load test after 30 seconds

# Display detailed information, including the status of the spawned worker process.
--verbose:

Experiment: Stress test 4 CPUs, duration 180s

stress --cpu 4 --timeout 180s

Test memory, allocate 1GB memory

stress --vm 2 --vm-bytes 20G --timeout 360s
--vm 2: means to start 2 virtual memory pressure worker threads.
--vm-bytes 20G: The virtual memory size used by each worker thread is 20GB.
--timeout 360s: Set the stress test duration to 360 seconds (6 minutes) 

2.3 Disk speed test tool dd

dd is a command line tool under Linux, used to copy files and convert data. Through it, we can test the read and write speed of the hard disk.

Usage scenarios: Hard disk speed testing tools are often used to evaluate disk performance, select the most suitable storage solution, and detect whether there are performance bottlenecks on the disk.

To test the read speed and write speed, you can use different parameters of the dd command. For example, to test the reading speed, you can use the if parameter to read data from a file, and to test the writing speed, you can use the of parameter to write data to a file.

Test writing speed:

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

This will write zero data to the /data/test file to test the writing speed

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

This will read the data from the /data/test file and discard it, thus testing the read speed.

Note: You can also use fio to measure disk speed

2.4. Traffic access stress testing tool – ab

ab is a small tool that comes with Apache, used to test the performance of HTTP servers. Usage scenarios: Traffic access stress testing tools are often used to evaluate the performance of web servers and detect the performance of the system under concurrent access.

ab tool installation

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

Number of concurrent connections to the test website

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

This will create 10 concurrent connections, each performing 100 requests.

Test the request speed of the website

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

This will create 100 concurrent connections and execute a total of 1,000 requests. At this time, you can observe the CPU and memory through monitoring to initially evaluate the concurrent carrying capacity of the platform.

The above is the detailed content of Have you used these stress testing tools for Linux systems?. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:每日运维. If there is any infringement, please contact admin@php.cn delete
How to Fix Attachment Not Showing in Outlook 365?How to Fix Attachment Not Showing in Outlook 365?Apr 19, 2025 am 12:50 AM

Do you have trouble downloading or sending attachments in Outlook 365? Sometimes, Outlook doesn’t show them for some unknown reason, so you are unable to see them. In this post on php.cn Website, we collect some use tips for attachments not showing.

How to Fix V Rising Connection Timed out? Here Are 5 Solutions! - MiniToolHow to Fix V Rising Connection Timed out? Here Are 5 Solutions! - MiniToolApr 19, 2025 am 12:49 AM

When V Rising players try to join a server that is close to or already full, they may encounter the “V Rising connection timed out” issue. If you are one of them, you can refer to this post from php.cn to get solutions. Now, keep on your reading.

How to Turn on/off Real-Time Protection in Windows Security? - MiniToolHow to Turn on/off Real-Time Protection in Windows Security? - MiniToolApr 19, 2025 am 12:48 AM

Windows supplies real-time protection via Windows Security. But this feature may prevent you from doing something it thinks are dangerous. In this situation, you may want to temporarily turn on real-time protection. This php.cn post will show you how

Windows 11 24H2 or Windows 12? Does This Matter?Windows 11 24H2 or Windows 12? Does This Matter?Apr 19, 2025 am 12:47 AM

Microsoft has started working on next year’s Windows updates very early. Recent rumors state that the next update in 2024 might be Windows 11 24H2 rather than Windows 12. Everything is uncertain now. php.cn will now take you to see some related infor

Fix: Unable to Perform Requested Operation – Error 0x80030001 - MiniToolFix: Unable to Perform Requested Operation – Error 0x80030001 - MiniToolApr 19, 2025 am 12:46 AM

The error 0x80030001 often happens when you are attempting to copy files. The error code will be accompanied by a message that tells “unable to perform requested operation”. If you are struggling with this error, you can read this article on php.cn W

How to Download and Install Windows 11 KB5034765How to Download and Install Windows 11 KB5034765Apr 19, 2025 am 12:45 AM

On February 13, 2024, Microsoft released KB5034765 (OS builds 22621.3155 and 22631.3155) for Windows 11 22H2 and Windows 11 23H2. This security update brings you many new improvements and bug fixes. You can learn how to download and install Windows 1

Power Management Tab Missing from Device Manager - Top GuidePower Management Tab Missing from Device Manager - Top GuideApr 19, 2025 am 12:44 AM

Device Manager is widely used when you need to fix some computer issues. You can check the problematic devices and decide to uninstall or update device drivers. Besides, you can also set Power Management settings in Device Manager. However, you may f

2 Ways to Reset Windows Backup to Default in Windows 11/102 Ways to Reset Windows Backup to Default in Windows 11/10Apr 19, 2025 am 12:43 AM

When Backup and Restore (Windows Backup) fails to work, you can choose to reset it to default. How to restore Windows Backup to default in Windows 11/10? php.cn will guide you to easily do this thing in 2 ways and let’s go to see them.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Atom editor mac version download

Atom editor mac version download

The most popular open source editor