イベントメモこの記事は公開されてから1年以上経過しており、情報が古い可能性があります。ISUCON公式Blog今回はぼっちーむを回避して、会社の人と合わせて3人(+おまけ)でやっていました。5、6人いれば2チームで競う感じの参戦方法もありだったのですが、ちょっと都合が合わず。今回は初のチーム参戦ということもあって、意外と勝手がわからないことが多く、苦戦しました。オンライン予選に参加していましたやったことをまとめていきますねー==============================■初Azure!!初というとちょっと語弊がありますが、触ったことがあるのはかなり昔のAzureなので初Azureでもいいでしょう。当時と比べてかなり進化したUIになっていて、とても使いやすかったです。ガッツリインフラマンじゃないのでなんとも言えないところもありますが、まあまあいい感じなのではないでしょうか。仕方なく従量課金になったところでしょうか。数百円くらいの請求が来ると思います。■とりあえずシステムをPHPに切り替えたまっさきにPHPへ切り替えました。切り替えたとき、nginxのMIME読み込みがなかったためか、Chromeで正しく画面が表示されておらず、この解決にも時間がかかってしまいました。静的ファイルはちゃんと出ていたのでベンチは通っていましたw3000点くらいですかね。ちなみにPHP7が入っていました。pullしてコードを更新できるようにしました。capistranoなど仕込んでもよかったのですが、おてがるに、最速に、安定に。■isudaの文字列長を別カラムに保存してインデックスを張ったチームメイトがなんだこれはーーーって言いながら直していました。これでスコアが6000点くらいでしたかね。他にもインデックスがなさそうなところにもりもり張ってこのくらいだったかと。■isutar→isudaにHTTP通信するのをやめたぼくがなんだこれはーーーーって言いながら書き直していました。具体的にはDBも同居しているんだからそのまま直にSELECT掛けにいけばいいんじゃないかなあ、という実装に変更しました。同居ではなく、サーバ台数が多いなら分けたほうが縦横に広げやすいと思うので、そっちのほうがいいですよねきっと。この同タイミングで、nginxも1サーバだけにするように変更しました。バグが発生して時間がとられていくものの、無事完了してスコアが15000点くらいです。■isuda→isutarにHTTP通信するのをやめた逆も同じつくりになっていたので、こちらも同様にしてやめました。同タイミングで、nginxのfastcgicacheを入れました。スコアが23000点ほど。fastcgicacheはうまく設定できていなかったようで、スコアへの要因はあまりなかったようです。■Redisキャッシュへここまでですでにhtmlifyメソッドがヤバソウ、スターをキャッシュとかできないかなあ、といった話題が出ていました。裏で実装を進めており、夕方ころに完成、マージしていきます。ここでスコアが25000点ほど。うーん、キャッシュの作り方が悪かったのか、ちょっと微妙な結果でした。いったあたりで終了の時間になりました。2万点台に乗ったとき、ベンチのランキング上位に入ったので、このまま順調に対応していければ本選出場も行けそうな予感がチーム内にあったのですが、、バグが出まくったりコンフリクトしたりと、課題が残る結果に終わってしまいました。==============================時系列的にはこんなところです。やり残した部分や気になる部分を挙げると...・htmlifyをちゃんと見れていなかったここ改善する余地めっちゃありそう。・スパムチェックも何かできそうバイナリがWebサーバになっていて、そこそこパフォーマンス高そうでしたが、HTTP通信はやっぱりコストが高いと思います。キャッシュできるといいなあ、とか。バイナリになっていて隠されていましたが、例えばベンチをガンガン回してチェックした内容をRedisとかnginxのリバースプロキシなどにとりあえず入れておくとか...。・最初にスコア計算の方法をちゃんと見ておくべきPOST遅延がかなり減点されるので、そこで一部足を引っ張られていた可能性が高そう・初期化処理生かせてない前回参加したISUCONでは初期化処理もそこそこコードを書いていたのですが、今回はまったく書いていませんでした。キャッシュを作ったり、下準備をしたりなどいろいろできるはず。・個々人で開発できる環境整備してあげようケチって1サーバで動作確認しまくっていたのですが効率が悪すぎて。ローカルでも動くようにDBコピーするとかいろいろ手は打てたはず・リブート検証してないよ結果としてはしなくてもよかった点数になりましたが、ここもちゃんと見てあげないと、でした。ルールにも再起動して大丈夫なこと、とかって書いてありましたね。pullしてたけどコンフリクトしてやばい感じになってた雑にフリースタイルにコミット!プッシュ!マージ!していましたが、ぶつかって直すと壊れて、が後半に頻発してヤバイ感じになっていました。・個々人の役割があまり明確でなかったある人はこれをやり、ある人も同じものをやり、が多くは無いですが少し発生していました。それぞれ得意スキルが異なっているはず(あまり詳しい得意スキルを把握していなかった)なので、最高のパフォーマンスを出せる場所へ誘導してもりもりやってもらう感じに~~~うぐぐぐ。data-src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>。