ISUCONとは
運営が用意した仮想のwebサービスをどれだけ早くできるかを競うよ!
詳しくは公式を見たほうが早い
チームメンバー
チーム名:typoの達人
- waku (@waku91304284)
- でるた (@0Delta)
- ディケイド (@akihiro_k2k)
事前準備
- slackのワークスペースを使ってメンバーと会話、ボトルネックの解析を集約
- VMを4つ立てて各自で自習
- zabbixでの監視準備
- ansible,gitの準備
- kataribe でのログ解析の準備
- isucon6, 7の過去問を解いてみる
当日の流れ
流れ自体はでるた氏の書いた記事があるので割愛
インフラ部分の準備はディケイド氏が担当
コードの改修は主にでるた氏が担当、自分とペアプロ状態になる
反省点
- slow_logの解析ェ...
- はじめに手をつけるべきだった
- 開始時点で公式のマニュアルをちゃんと読む
- アプリケーションの切り替えやDBのバックアップの方法とか一通り見てからやらないと辛い
- デプロイ環境の準備
- 途中でディケイド氏がjenkinsを立ててくれたけど上手く活用できずに手動デプロイのまま
=> 事前準備で立てたVMに用意しておいてIPとかpath入れればデプロイできるくらいまで準備しておけば良かった
- 途中でディケイド氏がjenkinsを立ててくれたけど上手く活用できずに手動デプロイのまま
- アプリケーション全体の把握
- sheetsテーブルが座席数を参照していてupdateもinsertもしてないなら最初から固定値で扱えばよかった...
- Goぢから、リファクタリング力の不足
- N+1問題がネックになるのは過去問見ててわかってたから、解決法の常套手段くらいは頭に入れておくべきだった
- gitのブランチ戦略立てておかないと二人以上でソースいじってた場合にconflictの解消などで地味に手間がかかる
反省じゃない所感
- 予選会場の準備
- 今回はmixiが会場を提供してくれたが、3人1チーム+モニター1枚支給に対して電源が3つで辛かった
- 結構手狭になりがちでPCとモニターでほぼ机がいっぱい
良かったこと
- VM立てて過去問を解いたこと
- 初参加だったので、事前にどうやって進めていくのかのイメージができた
- slack, Discordで会話できてた
- 集まって予習することもあったけど、なかなか時間が取りづらいので