教你用ab命令进行并发与压力测试

x33g5p2x  于2022-04-16 转载在 其他  
字(1.7k)|赞(0)|评价(0)|浏览(481)

本文分享自华为云社区《【高并发】如何使用ab进行并发与压力测试?》,作者:冰 河。

今天给大家分享一篇如何使用ab进行并发与压力测试的文章。

工具使用示例如下:

  1. ab -n 1000 -c 50 http://localhost:8080/test

命令说明如下:

  • ab:ab命令;
  • n:总请求次数;
  • c:并发数

运行示例如下:

  1. [root@localhost] ab -n 1000 -c 50 http://localhost:8080/test
  2. This is ApacheBench, Version 2.3 <$Revision: 1843412 $>
  3. Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
  4. Licensed to The Apache Software Foundation, http://www.apache.org/
  5. Benchmarking localhost (be patient)
  6. Completed 100 requests
  7. Completed 200 requests
  8. Completed 300 requests
  9. Completed 400 requests
  10. Completed 500 requests
  11. Completed 600 requests
  12. Completed 700 requests
  13. Completed 800 requests
  14. Completed 900 requests
  15. Completed 1000 requests
  16. Finished 1000 requests
  17. Server Software:
  18. Server Hostname: localhost
  19. Server Port: 8080
  20. Document Path: /test
  21. Document Length: 4 bytes
  22. Concurrency Level: 50
  23. Time taken for tests: 0.792 seconds
  24. Complete requests: 1000
  25. Failed requests: 0
  26. Total transferred: 136000 bytes
  27. HTML transferred: 4000 bytes
  28. Requests per second: 1262.90 [#/sec] (mean)
  29. Time per request: 39.591 [ms] (mean)
  30. Time per request: 0.792 [ms] (mean, across all concurrent requests)
  31. Transfer rate: 167.73 [Kbytes/sec] received
  32. Connection Times (ms)
  33. min mean[+/-sd] median max
  34. Connect: 0 0 0.7 0 12
  35. Processing: 3 38 26.0 31 186
  36. Waiting: 2 26 21.5 23 175
  37. Total: 3 38 26.0 32 186
  38. Percentage of the requests served within a certain time (ms)
  39. 50% 32
  40. 66% 36
  41. 75% 42
  42. 80% 44
  43. 90% 60
  44. 95% 85
  45. 98% 151
  46. 99% 156
  47. 100% 186 (longest request)

返回结果数据说明如下:

  • Concurrency Level: 并发量
  • Time taken for tests: 整个测试的时间
  • Complete requests: 完成的总请求数
  • Failed requests: 失败的请求数
  • Total transferred: 响应数据的总长度(包括http头信息和消息体数据)
  • HTML transferred: 响应数据中消息体数据的总和
  • Requests per second:吞吐率(计算方式为:Complete requests / Time taken for tests,也就是 完成的总请求数 / 整个测试的时间)
  • Time per request: 用户平均请求等待时间
  • Time per request: 服务器平均请求等待时间
  • Transfer rate: 单位时间内从服务器获取的数据长度(计算方式为:Total transferred / Time taken for tests, 也就是 响应数据的总长度(包括http头信息和消息体数据)/ 整个测试的时间)

点击关注,第一时间了解华为云新鲜技术~

相关文章