写点什么

架构第七周作业

用户头像
Geek_Gu
关注
发布于: 2020 年 11 月 15 日
  1. 性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?

  2. 用你熟悉的编程语言写一个 Web 性能压测工具,输入参数:URL,请求总次数,并发数。输出参数:平均响应时间,95% 响应时间。用这个测试工具以 10 并发、100 次请求压测 www.baidu.com。


  1. 随着并发压力增加,吞吐量先增加后下降,响应时间先平缓变化后急剧上升。因为系统资源有限,并发越高消耗资源越多,资源消耗到达某个极限时,吞吐能力急剧下降,响应时间急剧上升。


#!/usr/bin/env python# encoding: utf-8
from gevent import monkeymonkey.patch_all()
import geventimport timeimport requestsfrom gevent import pool
URL = 'https://baidu.com'result = []

def get(url): start = time.perf_counter() response = requests.get(url) end = time.perf_counter() result.append(end-start)

def main(): p = pool.Pool(10) tests = [] for i in range(100): tests.append(p.spawn(get, URL)) gevent.joinall(tests) print(f'平均响应时间: {sum(result)/100}') print(f'95%响应时间: {sorted(result)[94]}')
if __name__ == '__main__': main()
复制代码


用户头像

Geek_Gu

关注

还未添加个人签名 2019.09.09 加入

还未添加个人简介

评论

发布
暂无评论
架构第七周作业