Masteries

技術的なことや仕事に関することを書いていきます.

ISUCON11 「天下n品」で予選参加して敗退しました

同僚の id:stefafafanid:masawada と共に「天下n品」で参加して, 予選敗退しました. 最終スコアは 33,586点とのこと.

自分がやったこととしては「Redisの活用を試みた(なお, スコアの上昇には寄与しなかった模様)」の一言に尽きます. その他やったことは, チームメンバーがエントリに詳しく書いてくれたのでそちらをご覧いただければと思います.

stefafafan.hatenablog.com

masawada.hatenablog.jp

感想

  • 事前に準備できるところを準備しておくことができてよかった
    • ISUCON, 予め準備できる部分(初動やツールの用意)とそうでない部分(問題を見て, 臨機応変に対応していく部分)がある... と思っていて, 前者についてはある程度事前に準備と練習ができたし, まだまだ改良の余地はあるものの素早く完了して, 後者の問題に取り掛かることができた
    • チームメンバーが事前にいいツールをガンガン用意してくれたので, とても助かった. ここまで快適にISUCONに取り組めたのは初の体験で, すごいと思った
  • 途中でスコアが下がってきた時に, 一歩立ち止まれなかったのは良くなかった
    • 個人的にはそこで焦ってしまった気がする. コードを少し戻して, どこでスコアが下がったのか? というところ調べた方が良かったのかも, と思っている
    • 焦っていろいろ手を打つ → 上がらなかったり, むしろ下がったりする, という悪循環に陥って精神的にもちょっと大変だった
  • 問題の分析と解決策の筋が悪かったので, スコアが伸び切らなかった... というのが今回のISUCONの総括になりそう
    • この辺りはいろいろな問題を見て, 試して, 場数(?)を踏むのが近道なのかな? と思っている
    • 過去問を解いたり分析したりして, 使える手を増やせるとISUCONでも業務でも活きそうと思った
  • Redisの活用, うまくいかなかったけど, 最後まで完了できたのは良かった(良かったこと探し)
    • しかも一番得意なPerlではなく, Go言語で最後までやりきれたのは自分でも驚いている
    • 過去, こういう大技系は試みようと思って諦めたりうまくいかないことが多かったので, (スコアには寄与できなかったけど!!!!)ベンチ通るレベルで完了できた, ということは手応えを感じた
      • 将来, もしISUCONや業務でRedisがうまくハマるパターンが出てきた時に「やれるぞ!」と言えるため
  • 一方で, このままだと何でもかんでもRedis化! と言いそう(とにかくRedisというハンマーを振り回したい状態)なので, 他の大技候補はもちろん, 小技候補もブラッシュアップしておきたい
    • 事前に過去問でRedis化の練習をしたおかげで, 高速に使えたのはよかった
    • なので, ISUCONを題材に, いろいろな技術要素の練習をできると良さそう
      • 最近自分にとって良い, 好き勝手できる「庭」的なコードがなかったので, それをISUCONの練習と組み合わせる(?)といいのかも, と思ったりした
  • あとは大技着手のタイミングも再考の余地がありそう
    • 今回は一通りの準備と調査が終わった段階で実装に着手したけど, もう少し小技というか手堅い改善を入れた後の段階でボトルネックを探して大技に着手した方が良さそうと思った
    • ちゃんと練習しておけば, 大技の完成にかかる時間はもう少し短くできると思うので, やっぱりいろいろ手を動かして, 使い慣れた道具にしておくのが大事そう

良いメンバーに恵まれて, 「次があったら勿論またやるぞ!!!」という勢いになっているので, 次こそは予選突破してみんなで天下一品飲みで祝賀会をしたいですね. やっていくぞ!!!!