暇を持て余せないタイプのエンジニアブログスマートフォン用の表示で見る暇を持て余せないタイプのエンジニアブログ2019-09-14【惨敗しました】ISUCON9予選に向けて準備してきたこととやったこと前回の更新が徳丸試験受験だったのでちょうど1ヶ月ちょっと空いてしまいましたね。この1ヶ月の間、割とこのISUCON9予選に向けて準備してきたので、そのことについて書きたいと思います。どんな問題だったかや、何をしたら早くなるなどの解説や、運営方針で色々あったことについては、この記事では触れません。忘備録的に自分たちが何を準備してきて、当日何が出来たかをまとめておきます。惨敗とはいえ、用意はかなりしてきたつもりなのでそれなりにためになる情報もあるんじゃないかなと思ってます。当日やったこと工夫したことポモドーロ環境構築について施策の検証方法について当日レポジトリ振り返り最後にISUCONってなに?去年の参加記に説明あるので読んでみてください!blog.zoe.tools準備してきたこと上記の通り去年のISUCON8で点数的には割と惜しいところまで行ったこともあり、今年こそは予選通過を本気で目指していました。予選通過に向けて去年の振り返りをもとに練習を重ねました。それぞれ早い段階で役割を決めたのでその役割で練習をしました。役割はざっくりこんな感じです。役割を決めての練習は全部で6日ほど練習しました。練習には過去問のISUCON5やISUCON8の予選問題を再現して練習してきました。デプロイスクリプト用意しておくこれも前回の反省からの行動です。事前に、用意できるものはできるだけ用意してきました。用意したスクリプトなどはすべてgithub上で管理していました。当日のタイムライン管理もwikiで予めやることを書き出し、迷うことなく作業できるようにしておきました。github.com特に初期、サーバをもらってからやることはだいたい決まってるので、まとめています。pprofを見れるようにここは前回に比べて割とうまくできるようになったと思います。調べてくれたおかげでとても見やすく、分析に置いてもとても役立ちました。(写真は↑しかとってなかったのでこれだけ、、)2チーム参戦これについては自チームの話とは関係ないですが、身内のコミュニティから今回ついに3チーム参戦しました。ISUCON面白いぞ、といいながら練習会をやってきた甲斐がありました。どのチームもコミュニティ名の「oysters」に少しかけた名前で出場してくれてました当日やったこと書こうと思ったけど疲れてきたので特に工夫したことだけ書いて、あとは当日のgithubレポジトリを貼っておきます。工夫したことポモドーロ25分で作業を行い、5分でやったことの報告と次やることの報告。2ポモドーロ進捗なかったらみんなで解決に当たる。いう方針でやってました。cloudのコンソールから各参加チーム代表者が運営に共有されたイメージをもとにインスタンスを立てベンチを回すと言う形式でした。インスタンスを立てました。2台は最初に立てたものと合わせて競技用のインスタンス、残り2台はチームメンバーの開発環境として配布しました。施策の検証方法についてこれは試行錯誤しながら思いついた方法ですが、開発環境として本番同等のインスタンスを渡すことが出来たので、アプリ側で改修したものが正しく改修出来ているかを確認する方法として、本物のポータルのベンチを使う、ということができることに途中で気づきました。具体的にはポータルでベンチを回す際にはグローバルIPアドレスとインターナルIPアドレスを入れてサーバを登録後、ベンチを回すのですが、どうせ本番提出時もベンチに使うIPはproxyしているwebサーバだけなので残り2つをチームメンバー二人のサーバを登録することで施策をそれぞれ改修してベンチを回してデバッグするということが出来ました。おかげで、本番に上げたらベンチ落ちてまた改修、みたいなことを減らすことが出来ました。当日レポジトリgithub.com基本的に当日はこのissueをもとに行動していきましたのでだいたいやったこと、やろうとしたことはこれを追えばわかるはず。(このレポジトリはこのブログを書くにあたって公開にしており、ISUCON開催中はプライベートリポジトリでやっていました。2019振り返りチームで振り返りをしたら追記します!最後に運営さんいつもありがとうございます。気づけばあっという間に7月ですね。月別アーカイブはてなブログをはじめよう!zoe302さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。