ISUCON5予選に参加した #isucon

ふらわーおんざへっど☆ (@m_nakamura145,@gomachan_7,@grubrescue)というチームでISUCON5予選に参加してきました。全員が今回ISUCON初出場。ヒカリエのLINEオフィスで作業してました。(オフィスめっちゃ綺麗だった)

予選前はせっかくなのでみんなあまり使わないGoでやるぞ!ってノリでしたが、本番でGoの実装にバグがあると連絡が来て自信がなくなり全員安定して書けるrubyに変更しました。

やったこと

役割分担としてはインフラ周りを@grubrescue、コードとSQL周りを@m_nakamura145、@gomachan_7の2人でという感じでした。

最初の一時間は全員でレギュレーション&コードを読み込み。その後クエリを書き換えていましたがうまく書き換えられなかったので @grubrescueにバトンタッチ。僕はunicornとnginxのworker数を調整してました。@gomachan_7はmy.cnfの設定をしてもらってました。 しかし、色々設定を変えてもとにかくベンチマークがFAILしまくって悩んでました。CSSが読み込まれない、POSTがタイムアウトするなどのエラーが出てしまい、スコア外の部分でチーム全員で時間を使ってしまったのが非常に痛かったです。 各自自分のインスタンスを立てて修正、提出用インスタンスにマージしようというやり方でしたが、そのマージもうまくいかず、 逆にスコアが下がってしまってみんなで首を捻ってました。

最終スコアは残念でしたが、チームメンバー全員でISUCONを楽しめたし、とにかくパフォーマンスチューニングの知識不足という感じでもっと勉強しようという気持ちが高まったので良い経験になりました。本戦出場したチームのメンバーに聞いても、構成はそのままで地道にクエリの書き換えと適切なインデックスを張るで本戦出場のスコアに達したらしいので基礎力が本当に大事なんだなと痛感しました。

来年も開催されて欲しいです!!ぜひ参加します!!

GCPが最高に使いやすかったので今後も使っていきたいです。