hello-world.jp.net
webエンジニアのメモ。とりあえずやってみる。

isucon11予選に参加しました

公開日時

tkuchiki, KonboiとISUCON11 オンライン予選に参加しました。

結果はスコアが伸びず(最終スコア14656)、予選敗退となりました。

チームメンバーの記事

やったこと

インフラをtkuchiki, アプリを自分とKonboiでチューニングといういつもの役割分担で進めました。

  • New Relicを見て処理時間の長いエンドポイントを確認
  • POST /api/condition/:jia_isu_uuid をバルクインサートに変更
  • 1件のみデータ取得しているSQLに LIMIT 1 を付与
  • get_isu_conditions_from_db 内のSQLに LIMIT #{CONDITION_LIMIT}" を付与
  • index追加

tkuchikiがデプロイの土台を整えてくれていたおかげで、手元のコードを手軽にデプロイしてベンチを回すことができ改修がやりやすかったです。

できなかったこと

  • POST /api/isu のチューニング

transaction内でAPIリクエストを送っている部分を外出ししてSQLをinsert文のみに置き換えられないかと思ったが、ベンチ実行時に互換性チェックでエラーになってしまった。

  • isu.image をファイル保存して配信

画像をファイル保存し、↓へのアクセスを1台のnginxに集約すればうまく配信できそうということは分かったが、nginx側で認証を通しつつ配信する方法が分からず時間切れ。

- post "/api/isu"
- get "/api/isu/:jia_isu_uuid/icon"

さいごに

運営の皆様、今年もありがとうございました!

そして、いつも一緒に参加してくれるチームの二人もありがとう!


Related #isucon

isucon6予選2日目に参加し通過できました

@Konboi、 @tkuchikiとチーム流れ弾としてisucon6予選に参加しました。