如何通过Apache Bench实现web压力测试

(编辑:jimmy 日期: 2024/12/23 浏览:2)

一、Apache Bench简介

  ApacheBench 是 Apache 服务器自带的一个web压力测试工具,简称ab。ab又是一个命令行工具,对发起负载的本机要求很低,根据ab命令可以创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问,因此可以用来测试目标服务器的负载压力。总的来说ab工具小巧简单,上手学习较快,可以提供需要的基本性能指标,但是没有图形化结果,不能监控。

二、Apache Bench安装

  首先需要安装Apache服务器,下载地址:https://www.apachelounge.com/download/,64位操作系统选上面一个压缩包。

如何通过Apache Bench实现web压力测试

安装

Ubuntu

  1: 使用apt在线安装:sudo apt install apache2-utils

  2: 检查安装是否成功:ab -V

使用常用参数说明

如何通过Apache Bench实现web压力测试

测试报告解读

如何通过Apache Bench实现web压力测试

例子

  (1) 模拟1个客户端请求100次:

    ab -n 100 http://www.example.com/

  (2) 模拟100个客户端请求10000次:

    ab -n 10000 -c 100 http://www.example.com/

  (3) 调用POST方法的接口10次,传输的数据格式为JSON:

    ab -n 10 -p json-file http://www.example.com/

  (4) 调用OPTIONS方法的接口10次:

    ab -n 10 -m OPTIONS http://www.example.com/

  (5) 输出每次请求的返回信息:

    ab -n 10 -v 2 http://www.example.com/

注意事项

  • 使用-H Content-Type 不能代替-T Content-Type指定Content-Type 头部
  • 如果提示ab: invalid URL,可能是URL最右边缺少/,例如http://www.example.com需要改为http://www.example.com/。
  • 需要注意如果压测的HTTP接口是通过返回结果判断是否成功(只要能响应都会返回200状态码),则需要自行去想办法识别失败的请求。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。