ISUCON7予選参加記(初心者)

一昨日行われたISUCON7予選にICPC国内予選に出た時と同じ、dGFpc2VpeXVtYQというチームで出ました。

ISUCONには初参加でミドルウェアの知識はほとんどなかったのですが、ISUCON夏期講習に参加して面白そうだったのでチームメイトを誘って参加。ただ、チームメンアーの内2人はコドフェスの予選通過していたため、多分ISUCON予選通過しても本戦参加しないので気楽に参加してました。

言語は雰囲気でpythonを使いました。

結果は惨敗。だめです。

その参加記をここに残します。

当日の流れ

深夜〜朝

KMCの部室で作業できるかと思っていたら、他のチームとの兼ね合いで厳しそうだったので、チームメイトの家で参加することになる。

9時過ぎ

チームメイトの家に集合する。他人の家に行くのは久方ぶりだったのでテンションが少し上がる。

9時半ごろ

どうやらコンテストが遅延するらしいとの情報が入ったので、ゼルダの伝説BoWを眺めたり、マリオカート8を3人でプレイするなどしてわいわいした。この辺のdiscordのリアクションの治安が悪くて面白かった。

11時半過ぎ

ご飯を食べに出かける。雨が降ってきてて悲しかった。

12時過ぎ

再びマリオカート8。13時にコンテストが始まるっぽいので、レギュレーションを読みながら備える。レギュレーションに複数サーバの存在を示唆する記述があり戦慄する。

13時13分〜

実は13時13分に始まらずに中途半端な時間に始まり、驚きながら開始。sshをしていたら、突然fail2banに拒否されるなどして辛かったが、テザリングなどで回避した。

前半

複数サーバ何もわからないのでappサーバ1台とDBサーバ1台でやって行くことにした。

とりあえず、alp等のツールを入れるなどしたりした後、なんやかんやでDBに画像バイナリが入っていてやばいことに気づき、app.pyを雑に編集してファイルに書き出す。その後DBに雑にインデックスを張るなどしたり、僕が知らない編集がなされるなどして、スコアが2倍ぐらいになった。

後半

椅子に座っただけ。

iconsがやばいのをなんとかしようと、nginxの設定を眺めた。nginxの経験が我々のチームにはほぼなかったこともあり、キャッシュの設定がうまくいかなかった。

何もわからなくなってきて雑に修正してベンチをかけまくっていた。

最終的に特に有効打を打てずにガチャを数回回して終了。

まとめ・結果

f:id:basemusi:20171023112054p:plain

最終スコアは19610だったはず。highestは2万点台。

惨敗という感じです。やっている最中はISUCONの雰囲気があり楽しかったですが、あまり成果が出せなかったので辛い……。

来年以降はとりあえずレギュレーションとか当日マニュアルとか熟読するようにしたい。

ただ、ためになった気がするし楽しかったので、来年以降も参加してみたいです。