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 初始化多维数组代码
Sep 06 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
Jun 14 Python
详解Python 数据库 (sqlite3)应用
Dec 07 Python
python3爬取各类天气信息
Feb 24 Python
python迭代dict的key和value的方法
Jul 06 Python
Pytorch反向求导更新网络参数的方法
Aug 17 Python
使用python+whoosh实现全文检索
Dec 09 Python
django教程如何自学
Jul 31 Python
python根据字典的键来删除元素的方法
Aug 16 Python
python用tkinter实现一个简易能进行随机点名的界面
Sep 27 Python
Pycharm plot独立窗口显示的操作
Dec 11 Python
pytorch查看网络参数显存占用量等操作
May 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 PDO的一些认识小结
2015/01/23 PHP
WordPress中访客登陆实现邮件提醒的PHP脚本实例分享
2015/12/14 PHP
php使用PDO执行SQL语句的方法分析
2017/02/16 PHP
php之header的不同用法总结(实例讲解)
2017/11/28 PHP
JS启动应用程序的一个简单例子
2008/05/11 Javascript
关于jQuery中.attr()和.prop()的问题探讨
2013/09/06 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
JQuery判断HTML元素是否存在的两种解决方法
2013/12/26 Javascript
javascript中if和switch,==和===详解
2015/07/30 Javascript
jquery专业的导航菜单特效代码分享
2015/08/29 Javascript
在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
2015/09/11 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
JS+HTML实现的圆形可点击区域示例【3种方法】
2018/08/01 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
在 Vue.js中优雅地使用全局事件的方法
2019/02/01 Javascript
vue路由--网站导航功能详解
2019/03/29 Javascript
vue cli3 配置proxy代理无效的解决
2019/10/30 Javascript
jquery实现广告上下滚动效果
2021/03/04 jQuery
[02:25]DOTA2英雄基础教程 生死判决瘟疫法师
2013/12/06 DOTA
[01:15:45]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第一局
2016/02/26 DOTA
python3.3实现乘法表示例
2014/02/07 Python
利用Python实现Windows定时关机功能
2017/03/21 Python
详解python实现识别手写MNIST数字集的程序
2018/08/03 Python
Python lambda表达式filter、map、reduce函数用法解析
2019/09/11 Python
基于Python爬取素材网站音频文件
2020/10/21 Python
大都会艺术博物馆商店:The Met Store
2018/06/22 全球购物
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
创意爱尔兰礼物:Creative Irish Gifts
2020/01/29 全球购物
J2EE面试题大全
2016/08/06 面试题
远程培训的心得体会
2014/09/01 职场文书
房屋买卖委托书格式范本格式
2014/10/13 职场文书
就业推荐表导师评语
2014/12/31 职场文书
公司聚餐通知
2015/04/22 职场文书
python获取带有返回值的多线程
2022/05/02 Python