ISUCON10予選にいつものメンバー(waniji, yasu)で参加してまたしても敗退しました。
スコアは1188で終わった、ただの感想ブログです。(すごいハックをしたとか、何か便利なツールがあるとかの紹介とかもないです)
メンバーのblogとか
- wanijiのblogはこちら ISUCON10予選にk02で参加して敗退しました - Alligator Swamp
事前にやったこと
- slackで雑に去年どうだった?って振り返った程度… 🤷♂️
- slackのチャンネル整備やgithubのrepository用意など最低限の準備
- オンライン開催だったので、マイクやカメラのテスト等
ISUCON10予選当日の作業の流れ(kyokomi目線)
8:00
- 起床
8:40
- 開始時間が変更される告知でヽ(・ω・)/ズコー
9:00
- 色々slackなど準備完了
12:15
- 開始 マニュアル読んだり、sshの確認したりなど
- あ、ISUUMOだ!!!
13:30
- benchmarkが動くようになったので初期スコア確認
14:00
- コード読んだり、NewRelic用のコードを仕込んだり
- スゴーイ 🎉
- featuresってなんだろ?ってDBのデータをみたり(カンマ区切りなるほどね〜)
14:30
- 大体スロークエリっぽいのやつのあたりをつけて対応していく
17:00
- rent_range_id, door_widht_range_id, door_height_range_idカラムを追加してindexが効くようにする
- ちなみに三回とも
strconv.Atoi
するの忘れてバグり散らかすという… 😇 - structにfieldを足し忘れて
select *
が爆死したりなど初歩的な問題に何回もつまずいていた
18:30
- 椅子側のテーブルもragen_idカラムを追加する対応
- そこそこスコアは伸びるものの、なぞって検索がエラーになってスコアが伸びずという感じ
19:00
- なぞって検索をなんとかしようと wanijiといろいろ考える
19:40
- wanijiが改修案をだして自分がガッと実装する
20:30
ORDER BY popularity DESC, id ASC LIMIT ? OFFSET ?
が厳しい〜〜って感じで色々試行錯誤していた- idいらねーんじゃね?って消したり(過激派)
21:00
- なんやかんやしてるうちに時間が終了
- スコアも1188という感じで、ひとまず1000は超えられてよかったね。。。という感じで敗退
振り返り
ISUCON10 予選問題の解説と講評 読んで最初に思った感想がこれだったという現実が厳しい〜って気持ちになった。
あと細かいタイムロスが目立ったAtoi` とか… 😇
この辺、普段の業務だと開発環境でバグが発見されてすぐに修正PR出したり、最悪リリース前のQAで発見されて、修正という流れに慣れてしまっている感じがある。
社会人枠が上位に食い込めないのはその辺もあるんじゃないだろうか?とか思った。(小並感)
とはいえ、時間が限られた障害対応時なども同じような話な気もするので、感覚のスイッチをしっかり切り替えて挑むのは大事なのかもしれない。