我该如何测试一个图片上传服务的瓶颈呢?

发布于 2022-09-12 04:23:33 字数 592 浏览 48 评论 0

最近在做接口测试,测一个上传服务接口的性能。
我测试并发用的是 go 写的脚本,里面的多并发用 goroutine,每个并发发送的次数则用循环同步上传。
比如测十个并发,每个并发发送二十次,就用十个 goroutine , 每个goroutine 中 for 循环二十次发送。

结果:
我在单台服务器上用 100 个并发,传 10 次 5.3M 的图片,也就是 100 * 10 ,结果是 30s/次请求。
我又用三台服务器请求,每台都100个并发,传十次(100*10),发现结果还差不多是 30s/次请求。
两次测试,不管是测试服务器还是上传图片服务器,cpu 和内存占用都不高。

从结果看:每个接口的耗费时间似乎是受限于测试机器的上传带宽,使测试没有测出上传服务器的性能极限。

问题:

  1. 为什么会出现三台机器一起并发得出的请求时间与一台机器类似的情况,不应该是三倍吗(90s),真的是因为带宽受限吗?还是其他原因
  2. 在我手头并没有几台服务器的情况下,我怎么才能测出上传服务的性能瓶颈?
  3. 正规流程的测试该是什么样子的,像这类测试应该监控哪些参数,来确定接口的瓶颈在哪里?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

塔塔猫 2022-09-19 04:23:33

1 你那个图片上传的接口服务处理时间是一定的吧,和你几个服务器应该没关系吧
2 个人意见对改变图片大小和请求次数来测试性能瓶颈吧

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文