后端工程师如何使用apache ab性能测试工具进行系统压力测试(比LoadRunner简单多了)

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: 作为后端工程师,除了实现业务需求之外,需要考虑的就是自己写的服务,在大并发下是否能正常运行了。但是,在一般开发情况下,没那么多大并发情况让你测试,那该怎么办呢?这时候,我们就可以用到apache的压力测试工具了,apache bench简称ab。

作为后端工程师,除了实现业务需求之外,需要考虑的就是自己写的服务,在大并发下是否能正常运行了。但是,在一般开发情况下,没那么多大并发情况让你测试,那该怎么办呢?

这时候,我们就可以用到apache的压力测试工具了,apache bench简称ab。下面介绍如何使用apache ab性能测试工具进行系统压力测试。

 

一、介绍

ab是apache自带的压力测试工具,ab是apache bench命令的缩写。

当安装完apache后,就可以在bin下面找到ab.exe然后进行apache 负载压力测试。命令格式如下:

image.pngimage.png

ab测试工具主要有以下两个功能:

(1)ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,它既可以用来测试apache的负载压力,也可以测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力。

(2)ab命令对发出负载的计算机要求很低,它既不会占用很高CPU,也不会占用很多内存。但是自己测试使用也需要注意,否则一次上太多的负载。可能造成目标服务器资源耗完,严重时甚至导致死机。

 

二、如何使用

ab压力测试工具使用非常简单,只需一个命令即可。

示例:ab -n 200000 -c 20000 http://192.168.1.179/  >>d:1.html

-n:请求数

-c:并发数

上面的示例表示:每次并发20000个请求,总共请求200000次,并把结果输出到指定文件里。

image.pngimage.png

执行结果:

image.png

 

三、结果参数解释

参数说明:

Document Length:        315 bytes       HTTP响应数据的正文长度

Time taken for tests:   0.914 seconds    所有这些请求处理完成所花费的时间

Complete requests:      800             完成请求数

Failed requests:        0                失败请求数

Total transferred:      393600 bytes     网络总传输量

HTML transferred:       252000 bytes     HTML内容传输量

Requests per second:    875.22 [#/sec] (mean) 吞吐量-每秒请求数

Time per request:       914.052 [ms] (mean)  服务器收到请求,响应页面要花费的时间

Time per request:       1.143 [ms] (mean, across all concurrent requests) 并发的每个请求平均消耗时间

Transfer rate:          420.52 [Kbytes/sec] received 平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题


网络上消耗的时间的分解:

Connection Times (ms)

min  mean[+/-sd] median   max

Connect:        0    1   0.5      1       3

##连接的最小时间,平均值,中值,最大值

Processing:   245  534 125.2    570     682

Waiting:       11  386 189.1    409     669

Total:        246  535 125.0    571     684

整个场景中所有请求的响应情况。在场景中每个请求都有一个响应时间

其中 50% 的用户响应时间小于 571 毫秒

80 % 的用户响应时间小于 652 毫秒

最大的响应时间小于 684 毫秒


最后

以上,使用apache ab性能测试工具进行系统压力测试,是不是比LoadRunner简单多了。




相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
1月前
|
消息中间件 安全 Kafka
Apache Kafka安全加固指南:保护你的消息传递系统
【10月更文挑战第24天】在现代企业环境中,数据的安全性和隐私保护至关重要。Apache Kafka作为一款广泛使用的分布式流处理平台,其安全性直接影响着业务的稳定性和用户数据的安全。作为一名资深的Kafka使用者,我深知加强Kafka安全性的重要性。本文将从个人角度出发,分享我在实践中积累的经验,帮助读者了解如何有效地保护Kafka消息传递系统的安全性。
87 7
|
3月前
|
缓存 监控 安全
构建高效后端系统的最佳实践
本文将深入探讨如何构建一个高效的后端系统,从设计原则、架构选择到性能优化等方面详细阐述。我们将结合实际案例和理论分析,帮助读者了解在构建后端系统时需要注意的关键点,并提供一些实用的建议和技巧。
54 2
|
4月前
|
消息中间件 监控 数据挖掘
基于RabbitMQ与Apache Flink构建实时分析系统
【8月更文第28天】本文将介绍如何利用RabbitMQ作为数据源,结合Apache Flink进行实时数据分析。我们将构建一个简单的实时分析系统,该系统能够接收来自不同来源的数据,对数据进行实时处理,并将结果输出到另一个队列或存储系统中。
286 2
|
5天前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
26 3
|
17天前
|
机器学习/深度学习 人工智能 算法
【AI系统】AI 编译器后端优化
AI编译器采用多层架构,首先通过前端优化将不同框架的模型转化为统一的Graph IR并进行计算图级别的优化,如图算融合、内存优化等。接着,通过后端优化,将优化后的计算图转换为TensorIR,针对单个算子进行具体实现优化,包括循环优化、算子融合等,以适应不同的硬件架构,最终生成高效执行的机器代码。后端优化是提升算子性能的关键步骤,涉及复杂的优化策略和技术。
37 3
|
20天前
|
机器学习/深度学习 人工智能 算法
【AI系统】LLVM 后端代码生成
本文介绍 LLVM 后端的代码生成过程,包括将优化后的 LLVM IR 转换为目标代码的关键步骤,如指令选择、寄存器分配、指令调度等,以及后端如何支持不同硬件平台的代码生成。
27 6
|
1月前
|
消息中间件 Java Kafka
初识Apache Kafka:搭建你的第一个消息队列系统
【10月更文挑战第24天】在数字化转型的浪潮中,数据成为了企业决策的关键因素之一。而高效的数据处理能力,则成为了企业在竞争中脱颖而出的重要武器。在这个背景下,消息队列作为连接不同系统和服务的桥梁,其重要性日益凸显。Apache Kafka 是一款开源的消息队列系统,以其高吞吐量、可扩展性和持久性等特点受到了广泛欢迎。作为一名技术爱好者,我对 Apache Kafka 产生了浓厚的兴趣,并决定亲手搭建一套属于自己的消息队列系统。
63 2
初识Apache Kafka:搭建你的第一个消息队列系统
|
2月前
|
存储 缓存 监控
构建高效后端系统的关键要素
【10月更文挑战第12天】 本文将探讨如何通过合理的架构设计、数据库优化、缓存策略和性能调优等措施,构建一个稳定、高效的后端系统。我们将分享一些实用的技巧和最佳实践,帮助开发者提升后端系统的性能和用户体验。
39 1
|
2月前
|
Java 测试技术 程序员
「测试线排查的一些经验-上篇」&& 后端工程师
「测试线排查的一些经验-上篇」&& 后端工程师
24 1
|
2月前
|
存储 缓存 测试技术
构建高效后端系统的关键策略##
【10月更文挑战第2天】 在当今数字化时代,后端系统的性能和可扩展性对于任何技术驱动的企业都至关重要。本文将深入探讨如何通过优化数据库设计、实施缓存机制、采用微服务架构以及自动化测试等措施,构建一个既高效又可靠的后端系统。我们将从基础的代码优化开始,逐步讨论到架构级别的改进,最终目标是提供一个全面的指导方案,帮助开发者和企业提升其后端系统的性能和可维护性。 ##
61 2

推荐镜像

更多