どのぐらいまで生きていられるのか気になったので試してみる。wrk を使う (ab だとうまく高負荷にできなかった) wrk は brew で入る。
ベンチの際いくつか注意する
- Transfer/sec が十分に低いこと
- 帯域を使いきってると負荷をかけきれない
- Non-2xx or 3xx responses がではじめたら限界
- 発生しなかったときは表示されない
$ wrk -c 170 -d 10s -t 16 https://...
Running 10s test @ https://...
16 threads and 170 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 164.27ms 64.53ms 852.22ms 80.26%
Req/Sec 61.56 22.99 170.00 72.60%
9278 requests in 10.10s, 44.31MB read
Non-2xx or 3xx responses: 22
Requests/sec: 918.52
Transfer/sec: 4.39MB 日記システムは、これぐらいでCPUは使いきってちょいちょいエラーが発生する感じだった。
ヤフー砲が瞬間最大で100req/sec、継続的に30req/secぐらいらしいので、現実的にはこの日記が負荷で死ぬことはまずなさそう。他のサービスも同居してて相互に影響してる(バックエンドプロセスのワーカーを共有してる)けど。