可修改变量thread_count指定最大的并发数量,即线程的数量。
完成之后,打印输出失败的次数,以及开始时间和结束时间,单位是毫秒。
主要是学习一下Python,仅供参考。
#!/usr/bin/python3 import sys, time, json, _thread import http.client, urllib.parse thread_count = 100 #并发数量 now_count = 0 error_count = 0 begin_time = '' lock_obj = _thread.allocate() def test_http_engine(): global now_count global error_count global thread_count global begin_time conn = None if now_count == 0: begin_time = int(round(time.time() * 1000)) try: conn = http.client.HTTPConnection("192.168.1.1", 80) conn.request('GET', '/') response = conn.getresponse() data = response.read() print (data) if json.dumps(response.status) != '200': error_count += 1; print ('error count: ' + str(error_count)) sys.stdout.flush() now_count += 1 if now_count == thread_count: print ('### error count: ' + str(error_count) + ' ###') print ('### begin time : ' + str(begin_time)) print ('### end time : ' + str(int(round(time.time() * 1000)))) except Exception as e: print (e) finally: if conn: conn.close() def test_thread_func(): global now_count global lock_obj cnt = 0 lock_obj.acquire() print ('') print ('=== Request: ' + str(now_count) + ' ===') cnt += 1 test_http_engine() sys.stdout.flush() lock_obj.release() def test_main(): global thread_count for i in range(thread_count): _thread.start_new_thread(test_thread_func, ()) if __name__=='__main__': test_main() while True: time.sleep(5)
标签:
Python,HTTP并发测试
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“Python实现的HTTP并发测试完整示例”评论...
更新动态
2025年01月10日
2025年01月10日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]