Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
ISUCONにPHPで挑み続けて できるようになっ(てき)たこと PHPerKaigi 2025 2025.03.23 Yuta Ohashi
Slide 2
Slide 2 text
青ごへいもち / @blue_goheimochi 大橋 佑太 株式会社リンケージ ランニング, サッカー, フットサル, キャンプ 浜松まつり, PUBG MOBILE, けん玉 さわやかのげんこつハンバーグ おおはし ゆうた
Slide 3
Slide 3 text
ISUCONに
Slide 4
Slide 4 text
参加すること
Slide 5
Slide 5 text
8回!
Slide 6
Slide 6 text
8回! チームメンバーもずっと同じ
Slide 7
Slide 7 text
7 ISUCON 過去の成績(参考順位) • 2017年 - • 2018年 - • 2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
Slide 8
Slide 8 text
8 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - • 2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
Slide 9
Slide 9 text
9 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
Slide 10
Slide 10 text
10 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
Slide 11
Slide 11 text
11 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - • 2022年 - • 2023年 - • 2024年 -
Slide 12
Slide 12 text
12 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - • 2023年 - • 2024年 -
Slide 13
Slide 13 text
13 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - ISUCON12 予選( 142位 / 698組 ) • 2023年 - • 2024年 -
Slide 14
Slide 14 text
14 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - ISUCON12 予選( 142位 / 698組 ) • 2023年 - ISUCON13( Fail / 694組 ) • 2024年 -
Slide 15
Slide 15 text
非常に芳しくない ように感じてた
Slide 16
Slide 16 text
自分は
Slide 17
Slide 17 text
自分は 成長
Slide 18
Slide 18 text
自分は 成長 できているのか…??
Slide 19
Slide 19 text
不安
Slide 20
Slide 20 text
不安 不安
Slide 21
Slide 21 text
不安 不安
Slide 22
Slide 22 text
不安 不安
Slide 23
Slide 23 text
不安 不安
Slide 24
Slide 24 text
何事も 思うような結果が 出ないと 「不安」は感じる
Slide 25
Slide 25 text
25 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - ISUCON12 予選( 142位 / 698組 ) • 2023年 - ISUCON13( Fail / 694組 ) • 2024年 - ISUCON14( 73位 / 834組 )
Slide 26
Slide 26 text
26 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - ISUCON12 予選( 142位 / 698組 ) • 2023年 - ISUCON13( Fail / 694組 ) • 2024年 - ISUCON14( 73位 / 834組 )← PHPのチームでは2位…!
Slide 27
Slide 27 text
27 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail / 407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - ISUCON11 予選( 163位 / 598組 ) • 2022年 - ISUCON12 予選( 142位 / 698組 ) • 2023年 - ISUCON13( Fail / 694組 ) • 2024年 - ISUCON14( 73位 / 834組 )← PHPのチームでは2位…! PHP1位のチームとは ダブルスコアの差
Slide 28
Slide 28 text
28 目次 •できるようになっ(てき)たこと •「できる」を感じたポイント •どう成長を捉えていくとよいか? •まとめ
Slide 29
Slide 29 text
29 ISUCONってなに??
Slide 30
Slide 30 text
30 ISUCONってなに??
Slide 31
Slide 31 text
できるようになっ(てき)たこと
Slide 32
Slide 32 text
32 できるようになっ(てき)たこと • 準備 • 各サーバーにansibleで共通設定をいれる • GitHubへのコード・設定のバックアップの自動化 • ボトルネック特定 • NGINXのログの設定 – アクセスログからボトルネックをみる • MySQLのスローログの設定 – pt-query-digestなどでボトルネックをみる • 改善 • インデックスを貼る • アプリケーションサーバーとデータベースサーバーを分ける • 画像のキャッシュが効くようにする • opcacheの設定をする • preloadの設定をする • その他 • 素振りの環境をterraformで構築 • などなど
Slide 33
Slide 33 text
33 できるようになっ(てき)たこと ボトルネックの特定はできるようになってきているなという実感 • Before • 最初は本当に「何から手をつければ…」という状態だった • 「チューニングしたけど、ちゃんと改善されているのかも分からな い」 • After • 「このログのここを見ればよい」が分かってきている • 「チューニングに自信がもてる」状態が増えてきている
Slide 34
Slide 34 text
34 できるようになっ(てき)たこと ボトルネックの特定はできるようになってきているなという実感 • Before • 最初は本当に「何から手をつければ…」という状態だった • 「チューニングしたけど、ちゃんと改善されているのかも分からな い」 • After • 「このログのここを見ればよい」が分かってきている • 「チューニングに自信がもてる」状態が増えてきている
Slide 35
Slide 35 text
35 できるようになっ(てき)たこと 「チューニングに自信が持てる」状態が増えてきている • 一定、ISUCON文脈ではあるが… • ≒「推測するな、計測せよ」が意識できるようになってきている • 計測 → ボトルネックの特定 → 判断 → 改善 • 特に「判断」の精度が上がってきた感触がある • こういう傾向であれば、preloadの設定が効くだろうのような判断 • 闇雲な手ではなく、可能性の高い手を複数持つ・選択する意識
Slide 36
Slide 36 text
「できる」を感じたポイント
Slide 37
Slide 37 text
37 「できる」を感じたポイント ISUCON13の苦い記憶のアウトプット
Slide 38
Slide 38 text
38 「できる」を感じたポイント 「できる」にはグラデーションがあると認識した • 「できる」は 0 or 1 ではない • 「ここまではできている、ここまではできていない」 • 自分自身で(目標に対して)「できない」と「できる」の境目 を意識できているか?
Slide 39
Slide 39 text
どう成長を捉えていくとよいか?
Slide 40
Slide 40 text
40 どう成長を捉えていくとよいか? 「できること」「できないこと」を認識する・認める • 「できないことはダメなことだ」という想いが強かった • 「できること」「できないこと」をちゃんと認識することが必要 • 「ここまではできている」と思えると「じゃあそこからどうす る?」を考えやすくなる • 「できない」は「不安」は消えないが、認識できてれば自分自身でコ ントロールできていると考えて良い • 「できない」を一定ポジティブに捉えられる
Slide 41
Slide 41 text
刻むんだ
Slide 42
Slide 42 text
その行動を 努力と呼ぶ
Slide 43
Slide 43 text
逆も大事
Slide 44
Slide 44 text
自分が登れた 小さいステップを 認識する
Slide 45
Slide 45 text
努力できた行動を 自分自身で認める (メタ認知)
Slide 46
Slide 46 text
まとめ
Slide 47
Slide 47 text
47 まとめ • ISUCONにPHPで挑み続けてできるようにな(って)きたこと • PHP…あんまり…関係なかったですが…(マインド寄り) • できるようになってきたことは実は色々あった • 自分で「できた」を意識し「できない」もまた意識する • それにより、ここまでの「成長」とここからの「成長」をより意 識できるんじゃないかなと思っています
Slide 48
Slide 48 text
48 まとめ • PHPerKaigiでさまざまなトークを聞いたり、人と話して、 • 「ここはできてるな」「ここはできてないな」が少なからず心の 中に生まれたんじゃないかなと思います
Slide 49
Slide 49 text
49 まとめ • PHPerKaigiでさまざまなトークを聞いたり、人と話して、 • 「ここはできてるな」「ここはできてないな」が少なからず心の 中に生まれたんじゃないかなと思います • そう、「成長」の準備はできている!
Slide 50
Slide 50 text
明日からも 「成長」していくぞ !!!!!1