Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
Search
blue_goheimochi
March 23, 2025
Technology
340
0
Share
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
PHPerKaigi 2025のLT登壇資料です。
https://phperkaigi.jp/2025/
blue_goheimochi
March 23, 2025
More Decks by blue_goheimochi
See All by blue_goheimochi
最高のコーチになるためのスポーツコーチング学―知っておくべき「フレームワーク」と「スキル」― を紹介 / phperkaigi-mini-0
blue_goheimochi
0
27
「コントロールの三分法」で考える「コト」への向き合い方 / phperkaigi2026
blue_goheimochi
0
330
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
600
コミュニケーションを「パス」のやりとりと捉え大切にしていること / dai-kichijojipm-2024
blue_goheimochi
2
3.9k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
4
2.3k
芝生の障害対応・メンテナンスについて語る / ya8-2024
blue_goheimochi
1
180
「わたしたちのコード」を安定させるためにフレームワークとの距離を保つ / phperkaigi2024
blue_goheimochi
5
3k
コードを計測することで捉える問題点 / phpcondo2024
blue_goheimochi
5
1.4k
Laravelのコードとわたしたちのコードとの距離を保つ / phpcon2023
blue_goheimochi
1
2.4k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2026年4月度サービス・アップデート
oracle4engineer
PRO
0
240
COBOL婆さんの伝説
poropinai1966
0
130
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
510
Shipping AI Agents — Lessons from Production
vvatanabe
0
300
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
7.9k
音声言語モデル手法に関する発表の紹介
kzinmr
0
150
ファインディの事業拡大を支える 拡張可能なデータ基盤へのリアーキテクチャ
hiracky16
0
680
Building a Study Buddy AI Agent from Scratch: From Passive Chatbots to Autonomous Systems
itchimonji
0
110
データ定義の混乱と戦う 〜 管理会計と財務会計 〜
wonohe
0
170
独断と偏見で試してみる、 シングル or マルチエージェント どっちがいいの?
shichijoyuhi
1
220
ブラウザの投機的読み込みと投機ルールAPIを理解し、Webサービスのパフォーマンスを最適化する
shuta13
1
230
VespaのParent Childを用いたフィードパフォーマンスの改善
taking
0
170
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Code Reviewing Like a Champion
maltzj
528
40k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
230
Visualization
eitanlees
150
17k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
110
Navigating Weather and Climate Data
rabernat
0
180
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
160
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
490
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
330
How to Ace a Technical Interview
jacobian
281
24k
Transcript
ISUCONにPHPで挑み続けて できるようになっ(てき)たこと PHPerKaigi 2025 2025.03.23 Yuta Ohashi
青ごへいもち / @blue_goheimochi 大橋 佑太 株式会社リンケージ ランニング, サッカー, フットサル, キャンプ
浜松まつり, PUBG MOBILE, けん玉 さわやかのげんこつハンバーグ おおはし ゆうた
ISUCONに
参加すること
8回!
8回! チームメンバーもずっと同じ
7 ISUCON 過去の成績(参考順位) • 2017年 - • 2018年 - •
2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
8 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail /
407組 ) • 2018年 - • 2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
9 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail /
407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
10 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail /
407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - • 2021年 - • 2022年 - • 2023年 - • 2024年 -
11 ISUCON 過去の成績(参考順位) • 2017年 - ISUCON7 予選( Fail /
407組 ) • 2018年 - ISUCON8 予選( Fail / 528組 ) • 2019年 - ISUCON9 予選( 145位 / 598組 ) • 2020年 - ISUCON10 予選( 149位 / 490組 ) • 2021年 - • 2022年 - • 2023年 - • 2024年 -
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年 -
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年 -
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年 -
非常に芳しくない ように感じてた
自分は
自分は 成長
自分は 成長 できているのか…??
不安
不安 不安
不安 不安
不安 不安
不安 不安
何事も 思うような結果が 出ないと 「不安」は感じる
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組 )
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位…!
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位のチームとは ダブルスコアの差
28 目次 •できるようになっ(てき)たこと •「できる」を感じたポイント •どう成長を捉えていくとよいか? •まとめ
29 ISUCONってなに??
30 ISUCONってなに??
できるようになっ(てき)たこと
32 できるようになっ(てき)たこと • 準備 • 各サーバーにansibleで共通設定をいれる • GitHubへのコード・設定のバックアップの自動化 • ボトルネック特定
• NGINXのログの設定 – アクセスログからボトルネックをみる • MySQLのスローログの設定 – pt-query-digestなどでボトルネックをみる • 改善 • インデックスを貼る • アプリケーションサーバーとデータベースサーバーを分ける • 画像のキャッシュが効くようにする • opcacheの設定をする • preloadの設定をする • その他 • 素振りの環境をterraformで構築 • などなど
33 できるようになっ(てき)たこと ボトルネックの特定はできるようになってきているなという実感 • Before • 最初は本当に「何から手をつければ…」という状態だった • 「チューニングしたけど、ちゃんと改善されているのかも分からな い」
• After • 「このログのここを見ればよい」が分かってきている • 「チューニングに自信がもてる」状態が増えてきている
34 できるようになっ(てき)たこと ボトルネックの特定はできるようになってきているなという実感 • Before • 最初は本当に「何から手をつければ…」という状態だった • 「チューニングしたけど、ちゃんと改善されているのかも分からな い」
• After • 「このログのここを見ればよい」が分かってきている • 「チューニングに自信がもてる」状態が増えてきている
35 できるようになっ(てき)たこと 「チューニングに自信が持てる」状態が増えてきている • 一定、ISUCON文脈ではあるが… • ≒「推測するな、計測せよ」が意識できるようになってきている • 計測 →
ボトルネックの特定 → 判断 → 改善 • 特に「判断」の精度が上がってきた感触がある • こういう傾向であれば、preloadの設定が効くだろうのような判断 • 闇雲な手ではなく、可能性の高い手を複数持つ・選択する意識
「できる」を感じたポイント
37 「できる」を感じたポイント ISUCON13の苦い記憶のアウトプット
38 「できる」を感じたポイント 「できる」にはグラデーションがあると認識した • 「できる」は 0 or 1 ではない •
「ここまではできている、ここまではできていない」 • 自分自身で(目標に対して)「できない」と「できる」の境目 を意識できているか?
どう成長を捉えていくとよいか?
40 どう成長を捉えていくとよいか? 「できること」「できないこと」を認識する・認める • 「できないことはダメなことだ」という想いが強かった • 「できること」「できないこと」をちゃんと認識することが必要 • 「ここまではできている」と思えると「じゃあそこからどうす る?」を考えやすくなる
• 「できない」は「不安」は消えないが、認識できてれば自分自身でコ ントロールできていると考えて良い • 「できない」を一定ポジティブに捉えられる
刻むんだ
その行動を 努力と呼ぶ
逆も大事
自分が登れた 小さいステップを 認識する
努力できた行動を 自分自身で認める (メタ認知)
まとめ
47 まとめ • ISUCONにPHPで挑み続けてできるようにな(って)きたこと • PHP…あんまり…関係なかったですが…(マインド寄り) • できるようになってきたことは実は色々あった • 自分で「できた」を意識し「できない」もまた意識する
• それにより、ここまでの「成長」とここからの「成長」をより意 識できるんじゃないかなと思っています
48 まとめ • PHPerKaigiでさまざまなトークを聞いたり、人と話して、 • 「ここはできてるな」「ここはできてないな」が少なからず心の 中に生まれたんじゃないかなと思います
49 まとめ • PHPerKaigiでさまざまなトークを聞いたり、人と話して、 • 「ここはできてるな」「ここはできてないな」が少なからず心の 中に生まれたんじゃないかなと思います • そう、「成長」の準備はできている!
明日からも 「成長」していくぞ !!!!!1