利用Apache ab以及GNUPlot来进行Web测试
最近写了几个测试脚本,希望要观察使用PUT方式上传文件和使用POST方式上传文件,两者效率的差别。
分别是:
put_client.php 模拟客户端发送PUT请求
put_server.php 接收客户端的PUT请求,并保存文件
post_client.php 模拟客户端发送的POST请求
post_server.php 接收客户端的POST请求,并保存文件
/Files/cocowool/code.zip
然后利用ab(ab是apache自带的一个性能测试工具)对客户端文件发起请求,来测试处理所消耗的时间。具体的测试场景设计了以下四组
1、使用PUT请求,改变并发的请求数。其中请求数设置为1000,并发数分别设置为2、5、10、30、50
2、使用POST请求,改变并发的请求数。其中请求数设置为1000,并发数分别设置为2、5、10、30、50
3、使用PUT请求,改变发送的文件大小。其中请求数设置为1000,并发数设置为30,文件大小分别为100、150、200
4、使用POST请求,改变发送文件大小。其中请求数设置为1000,并发数设置为30,文件大小分别为100、150、200。
每次实验前,关闭系统的其他程序,清空数据文件夹内的数据,重新启动Lamp。
实验环境:Mac MC700、Apache2.2.6、PHP5.3.1
实验的结果:
测试结果:
1、不同并发状况下PUT的处理情况测试
结论:并发越大处理时间越长,个别请求因为负载问题造成处理时间超长。
2、不同并发状况下POST的处理情况测试
结论:并发越大处理时间越长.
3、PUT方式和POST方式对比。
结论:PUT方式优于POST方式,在并发较少情况下,这种差别不太明显,但是随着并发数的加大,差别开始显现。
4、根据上述结果,选定c=30时,测试不同文件尺寸下两中方式的差异。以下是100k、150k、200k文件大小时的结果图。
以上结果只是在本地环境测试,相信如果是服务器环境,PUT和POST方式的差异会更明显。
参考资料:
1、ab性能测试与Gnuplot绘制
2、httpperf+AutoBench+Gnuplot构建Web Server压力测试系统
利用Apache ab以及GNUPlot来进行Web测试相关推荐
- 利用 apache ab 测试服务器性能
安装步骤:https://blog.csdn.net/ahaaaaa/article/details/51514175 在Windows系统下,打开cmd命令行窗口,定位到apache安装目录的bin ...
- Apache AB 性能测试
上篇介绍了jmeter性能测试工具,本文介绍一个更加简单的测试工具 Apache AB性能测试; 还是使用上文的测试链接http://localhost:8111/index/hello?name=w ...
- 性能/压力测试工具Apache ab修改:按时间进行性能/压力测试
需求: 在对Nginx module 采用Aapche ab进行性能和压力测试的过程中发现: 1. 对于不同的并发线程,相同的请求数,性能/压测所需要的时间变化比较大: 2. 对于高并发的情况下,千万 ...
- apache ab压力测试
2019独角兽企业重金招聘Python工程师标准>>> ab的原理:ab命令会创建多个并发访问线程,模拟多个访问者同时对摸一个URL地址进行访问.它的测试目标是基于URL的,因此它既 ...
- apache ab使用详解
apache性能测试工具ab使用详解 站性能压力测试是服务器网站性能调优过程中必不可缺少的一环.只有让服务器处在高压情况下,才能真正体现出软件.硬件等各种设置不当所暴露出的问题. 性能测试工具目前最常 ...
- ab(Apache Bench)命令详解以及压力测试模拟
2019独角兽企业重金招聘Python工程师标准>>> 简介 ApacheBench 是 Apache服务器自带的一个web压力测试工具,简称ab.ab又是一个命令行工具,对发起负载 ...
- apache ab test使用 单独安装ab和htpasswd
apache ab test使用 apache ab test使用 单独安装ab和htpasswd 转载自: http://www.cnblogs.com/super-d2/p/3831155.htm ...
- apache ab压力测试学习
转载自 https://segmentfault.com/a/1190000012765485 1.介绍 网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环.只有让服务器处在高压情况下,才能 ...
- 利用IDEA部署过的Tomcat开发Web Service
(1)使用idea开发一个Web Service: (2)开发一个客户端来调用该Web Service并展现出相应j结果: (3)编程调用网络上提供的天气预报Web Service并显示结果. (1) ...
最新文章
- Java 程序员如何使用 Shiro 框架
- iphone连上wifi却上不了网_必收藏为什么手机信号满格,却上不了网,4招为你解决...
- 快速排序python实现
- 19款绚丽实用的jQuery/CSS3侧边栏菜单
- 机器学习基础(二十三)—— 概念、定义
- php图像销毁_php对图像的各种处理函数代码小结
- windows,安装yafu,RSA应用
- GB35114---基于pjsip协议库开发问题
- 优秀信息系统项目经理应该具备的技能和素质
- html颜色混搭的插件,Color by Fardos,网页取色配色插件,查找近似颜色,提供渐变配色...
- 浏览器大全推荐丨这26款浏览器你用过几个?
- 使用 关键字来创建python自定义函数_python 自定义函数
- ImportError: DLL load failed while importing win32file
- 用C语言写迎风飘扬的旗帜,驻村旗帜迎风飘扬
- 【学习笔记】HttpRunner自动化测试框架入门
- MySQL数据库学习笔记(2)
- VUE-CLI/VUE-ROUTER
- 有效的预防电脑辐射的方法
- reduce的方法详解
- 1073 多选题常见计分法 (20 分)(注意测试点4)
热门文章
- 隔空测量电压:电场强度测试仪-FMX-004
- 第16届东北赛区线上比赛斯赛点时间安排+直播链接
- 第一次使用考试宝进行作业练习
- 2021年春季学期-信号与系统-第五次作业参考答案-第四小题
- 人工智能产业政策与行业应用场景-备课资料
- 全国大学生智能车竞赛申请沁恒RISC-V MCU样品说明
- mysql 关联 update_关于SQL UPDATE关联更新
- azure devops中文显示乱码_【Azure DevOps系列】Azure DevOps生成代码覆盖率
- python概率密度函数_Python中概率密度函数的快速卷积
- mysql show作用_MySQL show的用法