ISUCON6、土曜日に参加しました。運営の皆様ありがとうございました・おつかれさまでした。
今回も凄く楽しみにしていたISUCON参加。体調万全にするため前日夜の仕事の打ち上げ呑みもアルコール程ほどに抑えて家に帰ったら
嫁「チョー体調悪いんで明日は娘の世話よろ」
はぁ!?
当日は9時辺りにムクリと起き出し、自宅部屋で全員リモートのメンバーとブリーフィングをしながらAzureの調整をしたり色々試行錯誤しているうちに(@matsuu様ご助言ありがとうございました)、10時を向かえ、さてやるか。
まずはさっさとインスタンス立てて、コードをgitにpush。
webページを見て、コードレビューもすぐにはじめたけど、まもなく娘をプールに連れて行くために離席。11時半からプールの受付前でノートPCを見ながらコードレビュー。
・htmlifyが激しいことやってるが、何やってるのかわからない。
・とりあえずnginx側にフロントエンドの静的ファイルキャッシュくらいはやる。
・dbは殆どインデックス効いてるから何やっても激的な効果ないと思われる。一つあったけどアクセス頻度低い。
・API,dbログ出してもらったが、むちゃくちゃ重いものがないように見える。
こういうことを一人で考えながら、プールが終わり、娘のアイカツに付き合い、家に帰ったのが14時。ランチに連れて行く暇も無かったので、とりあえずピザを頼んでPCに向かう。
この時ピザの臭いをかぎつけた嫁がもそもそ起き出し、ピザ食ったかと思ったらすぐにまた寝やがった!何かのゲージMaxになり冷静な判断が出来なくなる…
途中node.jsがスコアゼロと言うところがわかり、ロジックはnode.jsを参考にしつつphp実装に切り替えることに。今回実装殆どやれてません。
ああ、はてなリンクか!と気付いたのは15時ごろ。そうやって見ても、意外とロジックも必要十分のロジックだから手の出しようが無い。他にログインキャッシュとかあるかなと思ったけど、アクセス回数も少なそう。
最後の最後で、一回一回クエリーで正規表現のテーブル作ったりしてるのを止めようとメンバーで手を下し始めたのが17時。最後にベンチをかけたが、功を奏さず、9000弱で終了ー。。。
多分"GET /"のレスポンスが速くなると、次のボトルネックが見つかるのかな、と思ったのですが…残念でした。集中できなかった3時間ロスが痛すぎる。しかし一人の子育ては一生に一回しかないが、isuconは次回がある、と自分に言い聞かせ、反省したいと思います。