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
0
150
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
PHPerKaigi 2025のLT登壇資料です。
https://phperkaigi.jp/2025/
blue_goheimochi
March 23, 2025
Tweet
Share
More Decks by blue_goheimochi
See All by blue_goheimochi
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
300
コミュニケーションを「パス」のやりとりと捉え大切にしていること / dai-kichijojipm-2024
blue_goheimochi
2
3k
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
4
1.7k
芝生の障害対応・メンテナンスについて語る / ya8-2024
blue_goheimochi
1
75
「わたしたちのコード」を安定させるためにフレームワークとの距離を保つ / phperkaigi2024
blue_goheimochi
5
2.2k
コードを計測することで捉える問題点 / phpcondo2024
blue_goheimochi
5
1.1k
Laravelのコードとわたしたちのコードとの距離を保つ / phpcon2023
blue_goheimochi
1
2.1k
リンケージにおけるアプリケーションコードとの付き合い方とそれを支えるコミュニケーション / drobe_pixiv_linkage-20230905
blue_goheimochi
1
570
推測しないで、計測し、判断する! 〜カイゼンのためのステップ考察〜 / phpconfuk2023
blue_goheimochi
4
2.3k
Other Decks in Technology
See All in Technology
試験は暗記より理解 〜効果的な試験勉強とその後への活かし方〜
fukazawashun
0
340
От ручной разметки к LLM: как мы создавали облако тегов в Lamoda. Анастасия Ангелова, Data Scientist, Lamoda Tech
lamodatech
0
420
はてなの開発20年史と DevOpsの歩み / DevOpsDays Tokyo 2025 Keynote
daiksy
5
1.4k
SRE NEXT CfP チームが語る 聞きたくなるプロポーザルとは / Proposals by the SRE NEXT CfP Team that are sure to be accepted
chaspy
1
570
バックオフィス向け toB SaaS バクラクにおけるレコメンド技術活用 / recommender-systems-in-layerx-bakuraku
yuya4
2
290
改めて学ぶ Trait の使い方 / phpcon odawara 2025
meihei3
1
570
AI AgentOps LT大会(2025/04/16) Algomatic伊藤発表資料
kosukeito
0
130
NLP2025 参加報告会 / NLP2025
sansan_randd
4
520
開発視点でAWS Signerを考えてみよう!! ~コード署名のその先へ~
masakiokuda
3
140
AIと開発者の共創: エージェント時代におけるAIフレンドリーなDevOpsの実践
bicstone
1
250
.mdc駆動ナレッジマネジメント/.mdc-driven knowledge management
yodakeisuke
24
11k
Startups On Rails 2025 @ Tropical on Rails
irinanazarova
0
250
Featured
See All Featured
Fireside Chat
paigeccino
37
3.4k
A designer walks into a library…
pauljervisheath
205
24k
How to Think Like a Performance Engineer
csswizardry
23
1.5k
Writing Fast Ruby
sferik
628
61k
Speed Design
sergeychernyshev
29
880
Typedesign – Prime Four
hannesfritz
41
2.6k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
23
2.6k
A Tale of Four Properties
chriscoyier
158
23k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
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