Python实现的多线程http压力测试代码


Posted in Python onFebruary 08, 2017

本文实例讲述了Python实现的多线程http压力测试代码。分享给大家供大家参考,具体如下:

# Python version 3.3
__author__ = 'Toil'
import sys, getopt
import threading
def httpGet(url, file):
  import http.client
  conn = http.client.HTTPConnection(url)
  conn.request("GET", file)
  r = conn.getresponse()
  #print(r.getheaders())
  while not r.closed:
    r.read(200)
  conn.close()
def Usage():
  print('''
  Options are:
  -c concurrency Number of multiple requests to make
  -u host     The host
  -f file     File on web
  Example: httpget.py -c 100 -u www.example.com -f /
  ''')
if __name__ == '__main__':
  opts, args = getopt.getopt(sys.argv[1:], "hc:u:f:")
  global u, c, f
  for op, value in opts:
    if op == '-c':
      c = int(value)
    elif op == '-u':
      u = value
    elif op == '-f':
      f = value
    elif op == '-h':
      Usage()
      sys.exit(0)
    else:
      sys.exit(0)
  threads = []
  times = c
  print('Test for ', u, f)
  print('waiting...')
  for i in range(0, times):
    t = threading.Thread(target=httpGet(u, f))
    threads.append(t)
  for i in range(0, times):
    threads[i].start()
  for i in range(0, times):
    threads[i].join()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
零基础写python爬虫之爬虫框架Scrapy安装配置
Nov 06 Python
如何利用Fabric自动化你的任务
Oct 20 Python
Python 数据结构之堆栈实例代码
Jan 22 Python
Python多进程库multiprocessing中进程池Pool类的使用详解
Nov 24 Python
Python爬虫中urllib库的进阶学习
Jan 05 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
Python实现KNN(K-近邻)算法的示例代码
Mar 05 Python
python实现将一维列表转换为多维列表(numpy+reshape)
Nov 29 Python
pytorch 实现查看网络中的参数
Jan 06 Python
django 模版关闭转义方式
May 14 Python
python使用for...else跳出双层嵌套循环的方法实例
May 17 Python
Python如何使用ElementTree解析xml
Oct 12 Python
Python实现定时任务
Feb 08 #Python
python使用matplotlib绘制柱状图教程
Feb 08 #Python
Python实现简单的多任务mysql转xml的方法
Feb 08 #Python
python使用matplotlib绘制折线图教程
Feb 08 #Python
关于Python中Inf与Nan的判断问题详解
Feb 08 #Python
python3.5实现socket通讯示例(TCP)
Feb 07 #Python
Python中字典的setdefault()方法教程
Feb 07 #Python
You might like
浅谈php中mysql与mysqli的区别分析
2013/06/10 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
php实现的一段简单概率相关代码
2016/05/30 PHP
Thinkphp批量更新数据的方法汇总
2016/06/29 PHP
document.onreadystatechange事件的用法分析
2009/10/17 Javascript
用JS控制回车事件的代码
2011/02/20 Javascript
Flex通过JS获取客户端IP和计算机名的实例代码
2013/11/21 Javascript
jQuery+AJAX实现无刷新下拉加载更多
2015/07/03 Javascript
浅谈JavaScript中的分支结构
2016/07/01 Javascript
jQuery事件绑定用法详解
2016/09/08 Javascript
div实现自适应高度的textarea实现angular双向绑定
2017/01/08 Javascript
微信小程序 获取javascript 里的数据
2017/08/17 Javascript
详解RequireJs官方使用教程
2017/10/31 Javascript
jq.ajax+php+mysql实现关键字模糊查询(示例讲解)
2018/01/02 Javascript
深入剖析Express cookie-parser中间件实现示例
2018/02/01 Javascript
在Vue组件上动态添加和删除属性方法
2018/02/23 Javascript
Node在Controller层进行数据校验的过程详解
2020/08/28 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
python调用Moxa PCOMM Lite通过串口Ymodem协议实现发送文件
2014/08/15 Python
Python实现统计英文单词个数及字符串分割代码
2015/05/28 Python
Python实现将DOC文档转换为PDF的方法
2015/07/25 Python
python 迭代器和iter()函数详解及实例
2017/03/21 Python
python opencv实现运动检测
2018/07/10 Python
python2和python3在处理字符串上的区别详解
2019/05/29 Python
在Pycharm中使用GitHub的方法步骤
2019/06/13 Python
基于OpenCV的网络实时视频流传输的实现
2020/11/15 Python
美国最大的购物网站:Amazon.com(亚马逊美国)
2020/05/23 全球购物
new修饰符是起什么作用
2015/06/28 面试题
人民教师求职自荐信
2014/03/12 职场文书
产品开发计划书
2014/04/27 职场文书
大学学风建设方案
2014/05/04 职场文书
2016教师廉洁教育心得体会
2016/01/13 职场文书
房屋买卖定金协议书
2016/03/21 职场文书
导游词之无锡梅园
2019/11/28 职场文书
SONY600GR,国产收音机厂商永远的痛
2022/04/05 无线电