第七周大作业
性能压测的时候,随着并发压力的增加,系统响应时间和吞吐量如何变化,为什么?
系统响应时间变化考量的前提条件:热启动,没有锁竞争
第一阶段:并发数远没达到系统处理上线的时候,响应时间保持相对平稳,吞吐量随着并发数的增加而快速上升。
第二阶段:并发数接近系统处理上限的时候,开始出现CPU,内存资源的竞争,响应时间缓慢下降,吞吐量增长速率下降。
第三阶段:并发数超过系统的处理上限的时候,系统主要时间消耗在CPU竞争,线程上下文切换,内存置换等操作上,响应时间急剧增加,吞吐量快速下降。
用你熟悉的编程语言写一个 Web 性能压测工具,输入参数:URL,请求总次数,并发数。输出参数:平均响应时间,95% 响应时间。用这个测试工具以 10 并发、100 次请求压测 www.baidu.com。
没怎么写过WebSocket的东西,边查资料边做,用的HttpClient,代码不贴了,已经上传到github上了,第一次写这类工具,挺希望助教能够rebuild一下,或者给一个写得比较好的范例的。
github地址:https://github.com/softthink-csp/performaceTestTools
测试结果
评论