2016年07月07日 15:04:51 常城 阅读数:13774更多

个人分类: PythonLinux架构
 
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenggong2dm/article/details/51850923

写在前面:

近日要上线一个基于HTTP协议的游戏,所以要测一下压力。

想到ab测试是比较简便的,所以用ab来测试,但是问题来了,POST参数接不到。几经测试,才发现传递POST参数的方法。

安装ab:

win下直接使用Apache的工具,

centos下:

yum -y install httpd-tools

传递POST参数的步骤:

1,新建一个文件,里面放入POST参数。

注意,这个承载POST参数的文件,不依赖于后缀名。可跨平台(比如 Linux 下用 vi 建立的文件,win下也可以用)

POST文本内容如下:

name=chang&password=11111ok

我把这个文本保存成 postdata.txt ,放到了win机器下的 F盘 下。

1*,在服务端用代码检测一下,参数是否正常接收(这步不是必须):

django端代码(就是把传递过来的POST参数打印出来)

2,使用ab命令

ab -n 1 -c 1 -p f:/postdata.txt -T application/x-www-form-urlencoded "http://127.0.0.1/abpost"

例如win下:

上面命令的简单说明:

-n 测试几次(Number of requests to perform for the benchmarking session. The default is to just perform a single request which usually leads to non-representative benchmarking results.)

-c 模拟多少客户端(Number of multiple requests to perform at a time. Default is one request at a time.)

-T 内容类型。这个一般和-p 一起使用(Content-type header to use for POST data.)

-p 包含POST参数的文件(File containing data to POST.)

注意,最后的 URL 需要加引号。

控制台的打印结果:

OK,可以正常接收到POST参数,进行压测了!

-----------------------------------------------------------------------------------------------

Ps: 加上-V参数(一般取值为4),会把返回的状态打印出来,如下。但是每个请求测试都打印,有点烦。

LOG: Response code = 200
LOG: header received:
HTTP/1.0 200 OK
Date: Thu, 07 Jul 2016 06:11:06 GMT
Server: WSGIServer/0.1 Python/2.7.11
X-Frame-Options: SAMEORIGIN
Content-Type: text/html; charset=utf-8

https://blog.csdn.net/chenggong2dm/article/details/51850923

Apache ab使用POST参数进行压力测试 (服务端为Django)的更多相关文章

  1. apache ab工具对网站进行压力测试

    Apache -- ab工具主要测试网站的(并发性能) 这个工具非常的强大. 基本语法 :   cmd>ab.exe –n 请求总次数  -c 并发数 请求页面的url     进入到ab.ex ...

  2. 根据wsdl,apache cxf的wsdl2java工具生成客户端、服务端代码

    根据wsdl,apache cxf的wsdl2java工具生成客户端.服务端代码 apache cxf的wsdl2java工具的简单使用: 使用步骤如下: 一.下载apache cxf的包,如apac ...

  3. kafka性能参数和压力测试揭秘

    转自:http://blog.csdn.net/stark_summer/article/details/50203133 上一篇文章介绍了Kafka在设计上是如何来保证高时效.大吞吐量的,主要的内容 ...

  4. Monkey (压力测试)-移动端手机压力测试工具 monkey以及monkeyrunner

    4. Monkey (压力测试) 这个是Android提供的系统工具.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey测试是一种 ...

  5. CMDB学习之六 --客户端请求测试,服务端api优化

    客户端使用agent 请求测试,agent使用的POST 请求,使用requests模块 本地采集,汇报服务端 #!/usr/bin/env python # -*- coding:utf-8 -*- ...

  6. 用Apache 里面的ab做一个简单的压力测试

    我用的是xampp环境包. D:\xampp\apache\bin 进入这路径, 找到ab.exe  尝试双击打开ab.exe 但不能如愿, 这两个都是一个压力的测试软件, 是apache自带的; 好 ...

  7. Apache AB 如何传递参数

    AB使用时,网上通篇一律,在进行示例时使用的连接一般都是http://*.com,这种写法是没有带参数,如果你想测试一个写入的Case,那需要传递参数给后台,如何传递参数呢? 这里有一个登录的请求,需 ...

  8. app渗透测试 服务端篇

    基本知识 平时安装的应用位置,里面主要是odex可运行文件 /data/app 系统应用位置(需要root权限),里面主要是odex可运行文件 /system/app 应用的数据相关的位置,里面包含一 ...

  9. Apache ab压力测试时出现大量的错误原因分析

    最近有一个测试任务,是测试nginx的并发请求到底能够达到多少的, 于是就用ab工具对其进行压力测试. 这压力测试一执行,问题就来了:发起10000次请求,并发100,错误的情况能达到30%--50% ...

随机推荐

  1. mysql更新日志问题

    [root@localhost ~]# /etc/init.d/mysqld restart 停止 mysqld: [确定] 正在启动 mysqld: [确定] 故障:今天在维护以前数据库日志的时候, ...

  2. 一些C++11语言新特性 - Uniform Initialization

    1. Uniform Initialization , , }; std::vector<, , , , , , }; std::vector<std::string> cities ...

  3. 轻量级UIImageView分类缓存 库 AsyncImageView 使用

    轻量级UIImageView分类缓存 库 AsyncImageView 使用 一: AsyncImageView 主页:https://github.com/nicklockwood/AsyncIma ...

  4. PHP FTP函数

    PHP FTP 函数 PHP FTP 简介 FTP 函数通过文件传输协议 (FTP) 提供对文件服务器的客户端访问. FTP 函数用于打开.登录以及关闭连接,同时用于上传.下载.重命名.删除及获取文件 ...

  5. Sword框架解析——知识采集流程页面初始化

    Sword框架解析——知识采集流程页面初始化 Sword框架解析知识采集流程页面初始化 问题解答流程采集新增页面初始化 1后台t_xt_gnzy表和BLH类 2BLH类的写法前台目录树代码 3登录系统 ...

  6. Python 整数和浮点数运算

    和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数:1 + 2 # ==> 整数 31.0 + 2.0 # ==> 浮点数 3.0 整数和浮点数混合运 ...

  7. Eclipse/Myeclipse中查看和调试JDK源代码的方法

    看过这篇文章后,实践写的 http://blog.csdn.net/qq_27857857/article/details/71250401 一共做了以下几部: 第一步: 第二步: 一直next,到第 ...

  8. 【恢复,1】 redo 日志恢复的各种情况

    Recovering After the Loss of Online Redo Log Files If a media failure has affected the online redo l ...

  9. perl: warning: Setting locale failed.

    本篇文章由:http://xinpure.com/perl-warning-setting-locale-failed/ 将 mac 系统切换成英文后,使用 git 命令出现如下错误: perl: w ...

  10. [C/C++11语法]_[0基础]_[lamba 表达式介绍]

    场景 lambda 表达式在非常多语言里都有一席之地,由于它的原因,能够在函数里高速定义一个便携的函数,或者在函数參数里直接高速构造和传递. 它能够说是匿名函数对象,一般仅仅适用于某个函数内,仅仅做暂 ...