ISUCON13(2013)参加記録
今年は2名で参戦。おおよそ22000点くらいが最高スコアだった。
https://github.com/shimodatkh/2023-11-25-isu13
決めていたこと
- pproteinで計測する
- go-callvisでコールグラフを見る
- コードはローカルで書いてmainにpush
流れ
- 初回3000点くらいだった
- git周りミスっててリポジトリ作り直したり権限いじったり
- port番号のミスにハマる。pproteinでprofとalpが見えるようになる。
- sqlはスペックのせいかslpがインストールできず見れなくて、諦めて競技サーバでptqueryを手打ちして凌ぐ
- go-callvis動かすと計測サーバがスペックのせいか無反応になってしまうので諦め。ほかサーバではPATHがうまくいかなくて諦め。悲しい・・・
- 12時頃インデックス貼って6000点くらい
- getLivestreamStatisticsHandlerのSQLをまとめようとするが失敗。ここはgithub PRでやったのでrevertしやすかった
- このあたりでプロファイラにsha256.Sum256が目立つ状況になっていたので、hashをテーブルに保存するように修正することにした
- 修正したがbenchmark timeoutでなんだこれ?となる。実はベンチマーカーに障害が起きていた
- しかし、ベンチマーカー障害解消の周知後もbenchmark timeoutが続き、原因がわからない。ただweb画面にアイコンが出なくなっていてアプリがおかしくなっていることはわかっていた
- 結局右往左往したあとrevertした。見直しながら1つずつ入れていくと、型変換ミスに気づいた
db:"name"
忘れ- fillLivestreamResponse N+1改善
- 17:12 13,188点 UserRankingのN+1改善
- SetMaxOpenConns(50)
- 17:32 21,120点 計測系外す