ISUCON8に参加した

ISUCONの予選にmayoko君とakawashiro君とチーム「しょラーさんのおかげ」で参加した.参加記として作用ログとかを書く.

去年の参加記

チーム

去年,一昨年に引き続きmayoko君と,もう一人学生枠で参加者を募集したところしょラーさんのおかげでakawashiroさんが参加してくれることになった

準備

とりあえず例によってslackでチームを作り,1週間ぐらいまえからConohaでVPSを立ててISUCON7の予選とかISHOCON2とかをやっていた.

本番

10:00~

ansibleを使って諸々のインストール,プロファイルを取れる足場を固める.

h2oが起動していたのでこれをnginxに変更した.

11:00~

とりあえずベンチを取ってみたところ,静的ファイルの設定をしたはずが/favicon.icoがなんか重くこれの原因究明にハマる. その間に二人にはアプリを見てもらい,打ち合わせどうりにプロファイラなどを確認して重そうな所にあたりをつけ考察メモを作ってもらう

get_eventが重そうということだったのでmayoko君と相談しつつ改善案を決める.

favicon.icofavicon.inoとtypoしていたことに気づく

13:00〜

akawashiroさんに予約作成周りのロジックを改善してもらう. 自分はeventのキャッシュについて実装を始める

他の二人の実装をレビューしたりマージしたりする

14:00〜

mayoko君が実装してくれたget_eventの改善案が完成し,諸々マージする. ここでベンチを取ったときは5000点ぐらいのスコアが出ていた.

15:00~

Redisを使ってキャッシュをしようと思い導入する. インストールとかでハマる.(venv環境よくわからず・・・)

16:00〜

複数台構成の実装を開始. firewalldの設定とか,サービスを起動するIPを0.0.0.0にしなければならないことに気づかなかったりで時間を浪費する

17:00〜

再起動試験をしたり,パラメータをチューニングしたりする. 最終的に8000点弱のスコアが出たところで終了.

感想

  • しょうもないミス,しっかり確認していたら問題ないところにハマってしまい時間を溶かした.
  • チーム構成的に,自分が一箇所でハマっているとボトルネックになってしまうのでこれは非常に良くなかった
  • 14:00ぐらいから二人が手持ち無沙汰になっているを感じつつ,自分の実装をやるので精一杯だった
  • 他の二人が実装してくれた改善案で結構良い感じにスコア上がったので,それをもっと頑張るべきだったかなぁ

結果は予選を通過することができず,残念な結果でしたが,コンテスト自体は非常に楽しかったです. 運営の方,参加者の方,同じチームになってくれた二人に感謝です.ありがとうございました.

来年からは社会人枠になり,無差別級全国大会となるので予選通過はめっちゃハードル高いですが参加するだけでもできたらなーと思います.