尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Python实现的HTTP并发测试完整示例
实现的HTTP并发测试完整示例更新时间是2020年04月23日 15:08:01, 作者是。这篇文章主要是讲了怎么去实现那个HTTP并发测试, 其中涉及到了多线程进行并发操作的相关实现技巧,有需要的朋友可以进行参考一下。这个变量是可以进行修改的, 它的作用是指定最大的并发数量, 也就是线程的数量。在完成之后, 把失败次数的结果打印出来, 还有那个开始时间和结束时间也一并打印出来, 这里所说的单位是毫秒。这个情况的主要目的呢, 还是在于学习一下, 这一点仅供参考。#!/usr/bin/python3import sys, time, json, _threadimport http.client, urllib.parsethread_count 100 #并发数量now_count 0error_count 0begin_time lock_obj _thread.allocate()def test_http_engine():global now_countglobal error_countglobal thread_countglobal begin_timeconn Noneif 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 1if 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_countglobal lock_objcnt 0lock_obj.acquire()print ()print ( Request: str(now_count) )cnt 1test_http_engine()sys.stdout.flush()lock_obj.release()def test_main():global thread_countfor i in range(thread_count):_thread.start_new_thread(test_thread_func, ())if __name____main__:test_main()while True:time.sleep(5)
RELATED

相关推荐

【前端】JavaScript

【前端】JavaScript

需要放在script标签里面 引入方式 外部模式的话用script src相对路径绝对路径网络路径都是可以放的 在开发中一般css放在js上边,因为加载出来页面了,用户才交互 变量 js是动态弱类型语言,声明变量的时候不区分类型 变量命名规则 数据类型…

📅 2026/11/4 2:11:45
DYYY设置详解:如何玩转100+个开关,避开新手必踩的5大坑

DYYY设置详解:如何玩转100+个开关,避开新手必踩的5大坑

【免费下载链接】DYYY 用于调整抖音的UI的Tweak 项目地址: https://gitcode.com/gh_mirrors/dy/DYYY 点击查看 免费下载 DYYY 是一款用于调整抖音 UI 的 Theos/Logos Tweak(iOS 14.0,在抖音 36.5.0 上测试)。它的设置面板提供 8 …

📅 2026/11/4 2:11:45
Ice macOS 菜单栏管理器指南:如何隐藏、排序并自定义菜单栏图标

Ice macOS 菜单栏管理器指南:如何隐藏、排序并自定义菜单栏图标

Ice macOS 菜单栏管理器指南:如何隐藏、排序并自定义菜单栏图标 【免费下载链接】Ice Powerful menu bar manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ice/Ice Ice 是一款 macOS 菜单栏管理工具,它把冗余图标藏起来、把常用…

📅 2026/11/4 2:11:45
MORE NEWS

更多资讯

📰

SE8NET视频开发链路实战:采集、编解码、传输、渲染与同步排障

1. 视频开发这件事,先别急着写代码我第一次接触视频开发,是从一个“把摄像头画面传到另一台设备上显示”的需求开始的。当时我的判断很简单:不就是采集、编码、发出去、再解出来画到屏幕上吗?结果真动手才发现,这条链路…

📰

输入法词库迁移实战:编码、去重与词频映射避坑指南

前段时间帮人折腾输入法换平台,前后经手了大概七八套词库,从桌面端换到开源框架,又从开源框架换回手机端。几乎每个人一开始都觉得这事很简单——导出、转换、导入,三步。真上手才发现,输入法词库迁移的麻烦根本不在&q…

📰

T型路口车辆自主通行决策算法设计与实践

1. 项目背景与核心挑战在城郊结合部和老旧城区,无信号灯控制的T型路口是交通事故高发区域。这类路口通常缺乏明确的通行规则,不同方向的车辆在交汇时容易产生"谁先走"的决策困境。我去年参与的一个智慧交通项目中,就遇到过三辆车在…

📰

GEO定位技术测评:主流方案对比与选型指南

1. GEO定位技术测评:从原理到实战的全方位解析作为一名在位置服务领域摸爬滚打多年的技术老兵,我深知GEO定位技术选型对项目成败的决定性影响。市面上各种定位方案鱼龙混杂,厂商宣传往往避重就轻。为此,我自费采购了五款主流定位产…

📰

Linux文本编辑器Vim与Gedit对比及高效使用指南

1. Linux文本编辑器选择:Vim与Gedit的定位差异在Linux环境下进行文本编辑是每个开发者必须掌握的基础技能。与Windows系统不同,Linux提供了从命令行到图形界面的多种编辑工具选择。作为有十年Linux系统管理经验的开发者,我强烈建议根据使用场…

📰

连续批处理Continuous Batching:大模型推理调度优化

大模型推理服务的吞吐量上不去,绝大多数时候不是模型本身的问题,而是调度策略把它拖住了。我见过不少团队在单卡上跑一个7B模型,显存明明还剩一大截,QPS却死死卡在个位数,调大batch size也没用——因为请求是一个一个来…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬