rails + unicorn + nginx 環境を apache bench で負荷テスト


注意点:「Non-2xx responses」の数に注意しないといけない

テスト実施

テスト環境

  • rails 4.1.2
  • unicorn 4.8.3
  • nginx 1.7.6
  • DB: Mysql (RDSのm3.large)
  • サーバ1台(awsのm3.large)
  • viewの内容(標準的なウェブサイトのトップページのイメージ)
  • DBアクセスはindexを使ったselectを数件のみ。
  • viewのキャッシュなし
  • abコマンド: ab -n 3000 -c 500 #{url}

テスト結果

上記の設定だと、50req/secくらいになった。
viewのレンダリングが遅いので、viewを細かくキャッシュして、200req/secくらいが限界な気がする。
600req/sec くらいは簡単にいくよ!って人がいたら、コメントに書いてもらえると嬉しいです。