flask 部署后并发测试
部署后看下flask支持的并发,来个300并发看看,上代码
import threading, time, requests
url = "http://www.baidu.com"
total = 0
suc = 0
fail = 0
exception = 0
maxtime=0
mintime=100
gt3=0
lt3=0
class RequestThread(threading.Thread):
def __init__(self, thread_name):
threading.Thread.__init__(self)
self.test_count = 0
def run(self):
self.test_performace()
def test_performace(self):
global total
global suc
global fail
global exception
global gt3
global lt3
try:
st = time.time()
conn = requests.get(url)
res = conn.status_code
if res== 200:
total+=1
suc+=1
else:
total+=1
fail+=1
time_span = time.time()-st
print ('%s:%f\n'%(self.name,time_span) )
self.maxtime(time_span)
self.mintime(time_span)
if time_span>3:
gt3+=1
else:
lt3+=1
except Exception as e:
print (e )
total+=1
exception+=1
def maxtime(self,ts):
global maxtime
print (ts)
if ts>maxtime:
maxtime=ts
def mintime(self,ts):
global mintime
if ts<mintime:
mintime=ts
print ('===========请求开始===========' )
start_time = time.time()
thread_count = 100
i = 0
while i <= thread_count:
t = RequestThread("线程:" + str(i))
t.start()
i += 1
t=0
while total<thread_count|t>20:
print ("总数:%d,成功数:%d,失败:%d,异常:%d\n"%(total,suc,fail,exception) )
print (url)
t+=1
time.sleep(1)
print ('===========task end===========')
print ("总数:%d,成功:%d,失败:%d,异常:%d"%(total,suc,fail,exception))
print ('响应最大时间:',maxtime)
print ('响应最小时间',mintime)
print ('大于3秒的响应:%d,占比:%0.2f'%(gt3,float(gt3)/total))
print ('小于3秒:%d,占比:%0.2f'%(lt3,float(lt3)/total))
看下百度请求响应

那么我的呢

还算可以吧 支持的并发,不过不太准,可以参考。接口也可以用这个搞
flask 部署后并发测试的更多相关文章
- jmeter-登录获取cookie后参数化,或手动添加cookie, 再进行并发测试
以下情况其实并不适用于直接登录可以获取cookie情况,直接可以登录成功,直接添加cookie管理,cookie可以直接使用用于以下请求操作. 如果登录一次后,后续许多操作,可以将cookie管理器放 ...
- flask部署深度学习模型
flask部署深度学习模型 作为著名Python web框架之一的Flask,具有简单轻量.灵活.扩展丰富且上手难度低的特点,因此成为了机器学习和深度学习模型上线跑定时任务,提供API的首选框架. 众 ...
- 使用CodeBenchmark对逻辑代码进行并发测试
一直对性能测试比较感兴趣,所以也写了不少的测试工具有WebApiBenchmark和TcpBenchmark等;但这些工具测试都是有针对性和配置的方式来进行功能有限所以很难适用更多的场景,所以单独开发 ...
- jmeter之如何减负-实现稳定超高并发测试(性能调优)之正确添加监听器
jmeter之如何减负-实现稳定超高并发测试(性能调优)在测试过程中,初学者使用工具不当,添加众多监控组件,非常想看到实时报告,跑不了一会,jmeter就卡死,只得重启 下面来总结下如何正确使用jme ...
- Atitit.并发测试解决方案(2) -----获取随机数据库记录 随机抽取数据 随机排序 原理and实现
Atitit.并发测试解决方案(2) -----获取随机数据库记录 随机抽取数据 随机排序 1. 应用场景 1 2. 随机抽取数据原理 1 3. 常用的实现方法:::数据库随机函数 1 4. Mssq ...
- Fiddler 接口测试(Composer)的使用方法及并发测试
下载地址:https://www.telerik.com/download/fiddler 一.Composer简介 右侧Composer区域,是测试接口的界面: 相关说明: 1.请求方式:点开可以勾 ...
- spring boot2.0.4集成druid,用jmeter并发测试工具调用接口,druid查看监控的结果
一.项目介绍(本项目用的编程语言是jdk8,项目源码:https://github.com/zhzhair/spring-boot-druid.git) 1.引入pom依赖: <dependen ...
- Jmeter对HTTP请求压力测试、并发测试的简单使用方法
对于服务器性能测试这块的经验更是少得可以忽略.迫使不得不让我们去尝试了解测试的知识. 首先我们的需求场景如下: 服务器硬件:(只有一台) 系统:Windows 2003 WebServer:Tomca ...
- 协议并发测试工具 BoHexTest
BoHexTest V1.0.3 1.添加连接LOG打印2.优化代理及并发策略 大小: 1074688 字节修改时间: 2017年10月3日, 10:24:26MD5: EBAE5A17F7F5ED0 ...
随机推荐
- ubuntu实时显示网速cpu占用和内存占用率
ubuntu实时显示网速cpu占用和内存占用率 大家在使用ubuntu的时候,有没有想让它实时显示网速,内存占用率,或者cpu占用率呢?现在我就教大家怎么实现,就像下面这样 1. 添加indicato ...
- 前端构建工具之争——Webpack vs Gulp 谁会被拍死在沙滩上
.table tr>td:nth-child(1){width: 2em !important;padding-left: .6rem !important;padding-right: .6r ...
- Java数据结构和算法(六)——前缀、中缀、后缀表达式
前面我们介绍了三种数据结构,第一种数组主要用作数据存储,但是后面的两种栈和队列我们说主要作为程序功能实现的辅助工具,其中在介绍栈时我们知道栈可以用来做单词逆序,匹配关键字符等等,那它还有别的什么功能吗 ...
- 第七届C/C++B-方格填数 DFS
方格填数 如下的10个格子 +--+--+--+ | | | | +--+--+--+--+ | | | | | +--+--+--+--+ | | | | +--+- ...
- 开源纯C#工控网关+组态软件(七)数据采集与归档
一. 引子 在当前自动化.信息化.智能化的时代背景下,数据的作用日渐凸显.而工业发展到如今,科技含量和自动化水平均显著提高,但对数据的采集.利用才开始起步. 对工业企业而言,数据采集日益受到重视, ...
- javascript设计模式——组合模式
前面的话 在程序设计中,有一些和“事物是由相似的子事物构成”类似的思想.组合模式就是用小的子对象来构建更大的对象,而这些小的子对象本身也许是由更小的“孙对象”构成的.本文将详细介绍组合模式 宏命令 宏 ...
- c++ 求集合的交并补
#include<iostream.h> #include<windows.h> #include<iomanip.h> #include<stdio.h&g ...
- 机房收费系统——转换list泛型时,字段名称不正确应出现故障
因为之前对泛型研究了一番,所以就開始尝试着在机房收费系统重构中增加了泛型的使用. 可是到了做学生查看剩余金额这个功能的时候,还是依照之前的方法做的,可是在载入数据的时候班级这个框就没有显示出来--然后 ...
- [前端] jquery验证手机号、身份证号、中文名称
验证: 中文姓名.手机号.身份证和地址 HTML(表单): <form action=""> <div class="form-group"& ...
- System.out.println()的解释
上周面试的时候,面试官让我解释一下输出语句每一个单词是什么意思.当是有点蒙,后来想想这不就是考察对java中常用的的包,类和其中的方法的熟悉程度吗? 我们首先来看看System:这是一个类名,存在于j ...