使用Apache的ab进行压力测试

概述

ab是apache自带的压力测试工具,当安装完apache的时候,就可以在bin下面找到ab然后进行apache 负载压力测试。

后台测试开发中,常用的压力测试服务,php一般选择xampp,下载地址:点击打开链接,java后台,如果你选用apache,apache http自带了ab压力测试工具,地址:点击打开链接

下面以apache http server介绍ab压力测试。

安装

下载:http://httpd.apache.org/

注:

   PHP官方推荐httpd使用prefork(php能更稳定地运行),而不是线程化的worker和event,httpd-2.4.x默认使用线程化的event作为mpm。    Linux上很多PECL库都是非线程安全的,libphp5.so在线程化的httpd(event/worker)中运行可能会出现一些问题,为了保持兼容性和稳定性,PHP一般还是使用httpd-2.2.x(prefork)这个分支。

选择具体的类型

注:后两个是有名的wamp以及xampp集成环境,如果只想下载apache可以选择前三个网站,这里我们第一个ApacheHaus为例。点击打开链接

这里需要说明的是:

httpd-2.2.x(prefork) httpd-2.4.x(event) 编译时可以使用--with-mpm=prefork手动指定其使用prefork

下载完后解压,ab.exe程序就在E:\Apache24\bin中(这里可以将httpd -k install,把apache安装成windows后台服务),这里我们直接使用ab命令测试

使用ab命令

这里我们没有服务器,所以这段讲解用网络的图片。如我们使用下面的命令

# ab -n1000 -c10 http://192.168.116.193/index.html    #表示每次并发10个请求,总共请求1000次

我先在linux上启动一个node程序,此时访问地址是:http://192.168.132.144:8000/             打开cmd进入到bin目录中,输入ab.exe -c 1000 -n 1000 http://192.168.132.144:8000/         注意最后一个/必须要输入

ab的其他命令

格式: ./ab [options] [http://]hostname[:port]/path

Ab命令参数注释:   -n    #指定在测试会话中所执行的请求个数。默认时,仅执行一个请求。    -c    #指定一次产生的请求个数。默认是一次一个。   -t    #测试所进行的最大秒数。其内部隐含值是-n 50000。它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。   -p    #包含了需要POST的数据的文件.   -T    #POST数据所使用的Content-type头信息。   -v    #设置显示信息的详细程度 - 4或更大值会显示头信息, 3或更大值可以显示响应代码(404, 200等), 2或更大值可以显示警告和其他信息。 -V 显示版本号并退出。   -w    #以HTML表的格式输出结果。默认时,它是白色背景的两列宽度的一张表。   -I    #执行HEAD请求,而不是GET。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏python3

scrapy框架安装

10810
来自专栏我是攻城师

Nginx配置的一些小功能

38150
来自专栏MasiMaro 的技术博文

如何利用git shell提交代码到github

在很早之前我根据找到的一些资料以及自己的实践总结了一篇如何将VS2015上的代码上传到GitHub上,后来我发现有小伙伴私信我,说跟我上面写的不一样,但是那段时...

8920
来自专栏nummy

PyCharm使用内置SSH

在主菜单中选择Tools|Start SSH Session.., 然后点击弹出框中的Edit credentials:

15520
来自专栏古时的风筝

Django集成百度富文本编辑器uEditor

UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于MIT协议,允许自由使用和修改代码。 首先...

55390
来自专栏黑泽君的专栏

【强烈推荐】优启时代系统维护盘的安装步骤

  查看更新:http://www.uqi.me/post/usbsys2018.html

68620
来自专栏运维前线

使用Gitlab创建git项目

使用Gitlab创建git项目 登录gitlab系统,访问自己的gitlab.example.com,然后使用gitlab用户,登录 ? 第一次登录需要重新修改...

1.3K80
来自专栏ASP.NET MVC5 后台权限管理系统

ASP.NET MVC5+EF6+EasyUI 后台管理系统--任务调度系统解析

任务调度系统是什么:他是一个类似Sql Server的代理,他可以帮助你定时处理一些SQL事务

22520
来自专栏君赏技术博客

一键替换key的使用教程

22230
来自专栏Java开发

spring mvc注入配置文件里的属性

后来想了下,我项目是用spring mvc的,主要是controller需要读取这些配置信息, 而spring mvc的配置文件和spring的配置文件非同一...

34530

扫码关注云+社区

领取腾讯云代金券