Apache Benchというらしい。これ使って負荷チェックしてみる。
詳細はここに書いていたので、見ていただければと思います。
$ ab -n 100 -c 100 https://example.com/
cが、同時接続数で、nが合計リクエスト数だそうです。100ユーザが同時に2リクエストする場合は、下記です。
$ ab -n 200 -c 100 https://example.com/
この数値を上げて、嫌いなサイトに向けて実行すると、DOS攻撃になりますので、絶対にやめましょう。ちなみに、https://example.comだとinvalid urlといわれますね。https://example.com/というふうに最後にスラッシュが必要っぽいです。
実行結果
Concurrency Level: 30 Time taken for tests: 0.691 seconds Complete requests: 30 Failed requests: 0 Total transferred: 3620580 bytes HTML transferred: 3611130 bytes Requests per second: 43.40 [#/sec] (mean) Time per request: 691.295 [ms] (mean) Time per request: 23.043 [ms] (mean, across all concurrent requests) Transfer rate: 5114.64 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 59 62 1.8 63 65 Processing: 67 349 179.7 375 625 Waiting: 61 345 179.2 374 623 Total: 125 410 181.5 437 690 Percentage of the requests served within a certain time (ms) 50% 437 66% 504 75% 562 80% 625 90% 688 95% 689 98% 690 99% 690 100% 690 (longest request)
Requests per second
が、1秒間にさばけるリクエスト数だそうです。今回は、43くらい。これはab -n 100 -c 100でもほぼ同じでした。
Time per request(mean, across all concurrent requests)
が、1リクエスト当たりの処理時間だそうです。今回は、23msでした。これもab -n 100 -c 100でもほぼ同じでした。
でも、実行場所によって、全然結果が違う。別の環境だと、Requests per secondが、10くらい。Time per requestが、101msでした。