【ISUCON11】ISUCON初参加2021 SUMMER 〜諸々no知識だったけど参加してみたらお祭りだった〜
ISUCON11にこの夏参加してきました!初ISUCON
準備期間から本番まで非常に素敵な時間を過ごせた。ざっと備忘録
きっかけ
今年5月までISUCONの存在すら知らなかった。
とあるエンジニアさんから
ISUCONはエンジニアの夏の大運動会、技術と技術のガテン系ぶつかり合いのお祭り、おもしろいよ!
と教えてもらって気になっていた。
そんな矢先、Code Polarisでdzさんから、ISUCONやりませんかー、とのありがたい募集が!これは運命、神の見えざる手のお導きと諸手を挙げて参加表明、そのままdzさんとチームを組ませてもらうことに。
結果声を大にして言いたいことは、ISUCONは楽しかったよ!
チームは別だけど、CodePolarisとして一緒に参加したkaoriさんもISUCONブログ書かれてました(●´∀`)v↓↓
事前に取り組んだこと
- 公式:ISUCONの事前講習2つ
本番前から着々と前夜祭が盛り上がりを見せていました
↓↓個人でやったこと↓↓
- Liunxのおべんきょ:Linuxのサーバーを使うという事で、Linuxのコマンドなど知っとこうと↓
最新版Linux詳細!!基本コマンド、シェルスクリプト、Docker基礎、ネットワーク 、セキュリティを体系的に解説 | Udemy
自分の知識レベル的に、ちょうどかゆいとこまで手が届く内容で勉強になる。
- Nginxのおべんきょ:webサーバーは例年通りNginxかな、と講座見る↓ NGINX Fundamentals: High Performance Servers from Scratch | Udemy いままで全くいじったこと無かったから、色々な設定が出来ることを知り目から鱗。本番でも使えるかも!
- Isucon9予選少しいじり:alpやスロークエリの使い方を学ぶ@AWS。インバウンドルールを適切に設定していないことにより、時たま詰まる。
- dzさんと会議:当日の集合時間から、最初これをやろうなど決めたことをリスト化。あらゆる無料枠の登録やリポジトリの作成も事前に完了!
本番
10:00 :開始。node.jsで取り組むことにするcloudFormationから3台起動。マニュアル読み合わせを始めるも、長くて途中で一旦止め!笑
10:30 :無事ssh接続完了👏👏
11:00 :GitHubに必要なとこだけ(etcとwebapp)pushするのに四苦八苦。
何も考えずbench回す、2000点ぐらい? serviceをnodejsに変更→1100点ぐらい。3台のスペックを把握。どれも一緒ぽい。
12:00 :logのクリアやらサービス再起動するスクリプト作成。あれもう12時か、何もしてないぞ
14:00 :レポジトリのpushができるようになる。→権限回りの問題だった模様、dzさんが改修してくれた…ありがたや👏
slow-query onにするも、permission deniedで書けないよと、error.logに書いてある。。。権限色々変更でいけた。dzさんはアプリ側のチェック。alpで状況見たりしてくれている。アプリ側、お任せします…!(私はちんぷんのかんです)
pt-query-digestで時間かかってるquery把握からの、index貼る、score3000に上がった!上がったー!👏
やばいぞ楽しいぞー!
15:30 :nginx周りの設定を見る、cache周りなど少し設定を変えてみる score5000みたけど幻?
17:00 :SQLを別サーバに切り出しやろうかと思ったけど、時間間に合うか…でやめた。portalがつながらないー!時間経つの早いー!とキャッキャしていた。
で終了。結局ごはんもいらないほど8時間集中していて、あっという間に終わってしまった。
最終スコアは4184でした!もう、少し上げられただけでも私からしたら嬉しいのですよ…(´;ω;`)ただ上位の神々達はうん百万とかうん十万のスコアを叩き出していて、もう頭を垂れてひれ伏すしかありません。そんなスコア上がるのか…と夢も広がる
これからやりたいこと(ざっと)
- Pythonでやってみたい。ぱっと見Flask使っているようなので、少しFlaskさらって取り組む
- manual、documentもう少し読みこむ
- 分散化
- SQL学ぶ
- 公式の講評や、Discordのrandomチャンネルの神々達の話を読んで改良したい
はぁ~楽しかった。来年も参加したい。どんどん募集締め切りが早くなってきている(今年は数時間だったかな?)らしいけど、人気なのもわかる。
運営の皆様お疲れさまでした、ありがとうございました!