首页 >后端开发 >Python教程 >Python中关于flask部署后并发测试的示例代码

Python中关于flask部署后并发测试的示例代码

黄舟
黄舟原创
2017-07-24 14:08:062848浏览

部署后看下flask支持的并发,来个300并发看看,上代码

import threading, time, requests
url = ""total = 0
suc = 0
fail = 0
exception = 0
maxtime=0
mintime=100gt3=0
lt3=0class RequestThread(threading.Thread):def __init__(self, thread_name):  
        threading.Thread.__init__(self)  
        self.test_count = 0def run(self):
        self.test_performace()def test_performace(self):  global totalglobal sucglobal failglobal exceptionglobal gt3global lt3try:  
                st = time.time()  
                conn = requests.get(url)
                res = conn.status_codeif res== 200:
                    total+=1suc+=1else:
                    total+=1fail+=1time_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+=1else:
                    lt3+=1except Exception as e:  print (e  )
                total+=1exception+=1def maxtime(self,ts):  global maxtimeprint (ts)if ts>maxtime:
                maxtime=tsdef mintime(self,ts):  global mintimeif ts<mintime:
                mintime=tsprint (&#39;===========请求开始===========&#39;  )
start_time = time.time()
thread_count = 100i = 0  
while i <= thread_count:  
    t = RequestThread("线程:" + str(i))
    t.start()  
    i += 1  t=0while total<thread_count|t>20:print ("总数:%d,成功数:%d,失败:%d,异常:%d\n"%(total,suc,fail,exception)  )print (url)
        t+=1time.sleep(1)print (&#39;===========task end===========&#39;)print ("总数:%d,成功:%d,失败:%d,异常:%d"%(total,suc,fail,exception))print (&#39;响应最大时间:&#39;,maxtime)print (&#39;响应最小时间&#39;,mintime)print (&#39;大于3秒的响应:%d,占比:%0.2f&#39;%(gt3,float(gt3)/total))print (&#39;小于3秒:%d,占比:%0.2f&#39;%(lt3,float(lt3)/total))

看下百度请求响应

那么我的呢

还算可以吧 支持的并发,不过不太准,可以参考。接口也可以用这个搞

 

以上是Python中关于flask部署后并发测试的示例代码的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn