Scribble at 2026-09-09 12:22:40 Last modified: unmodified
PS C:\Development\Apache\bin> ./ab.exe -n 1000 -c 100 http://test.localhost/
This is ApacheBench, Version 2.3 <$Revision: 1923142 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking test.localhost (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software: Apache/2.4.63
Server Hostname: test.localhost
Server Port: 80
Document Path: /
Document Length: 83000 bytes
Concurrency Level: 100
Time taken for tests: 85.581 seconds
Complete requests: 1000
Failed requests: 0
Total transferred: 83247000 bytes
HTML transferred: 83000000 bytes
Requests per second: 11.68 [#/sec] (mean)
Time per request: 8558.105 [ms] (mean)
Time per request: 85.581 [ms] (mean, across all concurrent requests)
Transfer rate: 949.93 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.5 0 1
Processing: 727 8129 1310.2 8358 10212
Waiting: 637 8117 1310.5 8347 10195
Total: 727 8129 1310.2 8358 10212
Percentage of the requests served within a certain time (ms)
50% 8358
66% 8575
75% 8685
80% 8813
90% 9145
95% 9477
98% 9769
99% 9903
100% 10212 (longest request)
新しい案件で見積もりの相談が来た。コンペに出すためということで、概算なのだが、例によって「最大で100リクエスト/秒を想定」などとクライアントから指示が出ているという。こういう場合は、もちろん想定している「アクセス数」を教えてもらうようになっている。たいてい、特に行政というのは「リクエスト」を通信ネットワークの常識として理解しておらず、事実上は「ユニーク・アクセス」つまりは PV と同等のことを考えているのに、「リクエスト」という言葉を使うことが非常に多いからだ。もちろん、こういう杜撰な言葉を使うもともとの元凶は電通や博報堂といったテクノロジーに理解のない広告代理店にあるのだが。
ということで、最大で「100 PV/s」という想定をすると、どのていどのスペックのサーバを用意すればいいか。直観的には、僕らのように一定の時間帯だけ大量のアクセスが集中するようなサイトを運営したり、あるいはサーバを構築して運用していた経験が20年以上は前からあるデザイナーやエンジニア(僕の場合は全てやっていたので、いわば DesignDevOps の走りだ)なら、いまどきのサーバ・マシンであれば大した負荷にもならないことが分かる。なので、今回の事案でも、せいぜい「さくらのクラウド」であれば 4 core + 8 GB RAM + 40 GB SSD の構成で足りると考えて見積もりをディレクターに渡してある。もちろん、具体的な案件の内容は書けないが、瞬間的に大きなアクセスが予想できるタイミング(事前にテレビや新聞などに広告を出す日程)は分かるので、数日前から DNS の向きを CDN に変更しておくことも可能だ。だいたい、通常運転ならCDN なんて使わなくてもいいのに、5 PV/s なんてアクセスまで CDN を使っていたら、金がいくらあっても足りない(平均して 5 PV/s と想定すれば、CDN の料金は1ヵ月で15万円くらいになってしまう)。
上のデータは僕の旧マシンでローカル環境の WordPress サイト(ディフォールトのテーマで表示されるトップ・ページ)をターゲットにした場合の Apache Bench のログだが、キャッシュを使わないページの表示ですら "Failed requests" はゼロである。