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の戦い方
Search
くろきり
March 23, 2025
0
240
リアルISUCONの戦い方
PHPerKaigi2025の登壇資料です。
くろきり
March 23, 2025
Tweet
Share
More Decks by くろきり
See All by くろきり
なぜPHPStanやPHP CodeSnifferを導入するのか 〜受託開発編〜
kurokiri
0
250
PeachPieを使ってPHPを.NETで動かしてみた
kurokiri
0
260
少人数チーム開発でのレガシープロダクトとの向き合い方
kurokiri
0
1.1k
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
The Cult of Friendly URLs
andyhume
79
6.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
4 Signs Your Business is Dying
shpigford
185
22k
A designer walks into a library…
pauljervisheath
209
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
7.8k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Designing for humans not robots
tammielis
254
26k
Context Engineering - Making Every Token Count
addyosmani
8
300
Transcript
PHPerKaigi 2025 くろきり @9rokirishima リアルISUCONの戦い方
自己紹介 • 緒方 大佑(おがた だいすけ) • X:くろきり(@9rokirishima) • 所属 ◦
Growfit株式会社 ◦ 開発やったりマネージャーやったり
リアルISUCONとは
その前に
ISUCONを知ってますか?
ISUCONとは • Iikanjini Speed Up Contestの略 • 決められたルールの中で遅いWebシステムをどれだけ早くで きるかを競う大会 •
言語はGo、Perl、PHP、Python、Ruby、Rust、Node.js • 制限時間は8時間
遅いシステムを 決められた時間で いかに速くするかを競う大会
好きなポイント 問題の背景が面白い
TVCMが8時間後に流れるが CM経由で増加するDAUの目測を誤り緊急対応発生
キャンペーンで大規模障害が発生して 上司からの緊急連絡
8時間後にサービスインが決まっているのに重 くて使えない状態のシステムの改修依頼
現実じゃなくて 大会だから楽しめる!
もしこれが現実だったら、、、
それがリアルISUCON
遅いシステムを 決められた期限までに どうにかして速くする仕事
仕事!!!!
できないはNG
戦っていきましょう
どうやって?
ISUCONと同じ戦い方 ISUCONでは使えない戦い方
ISUCONと同じ戦い方
パフォーマンスチューニング
計測 => 改善 => 検証
初期対応はISUCONと同じ これで解決できれば最高
ISUCONの参考実装はわざと 遅い処理が書かれているが 天然物は遅くしようとして 書かれてない
ボトルネックの特定と改善に 時間がかかる 期限までに間に合わない!
それなら
ISUCONでは使えない戦い方
インフラのスペックアップ 仕様変更 期限交渉
インフラのスペックアップ
お金で解決
できればいいけど、、、
有効な手段だけどこれに頼りすぎると お金がいくらあっても足りない 現実的には もうこれしか手段がないって時までは (くろきり的には)やらない
仕様変更
正直これが一番効果的
なぜ効果的? ボトルネックとなっている作りを まるっと変えることができる
なぜこの機能を作っていたのか 認識した上で仕様を変えましょう 注意点
期限交渉
遅いシステムを 「決められた期限」 までに どうにかして解決する仕事
ルールを変える
どうしても無理な状況なら 期限交渉するのも一つの手 そんなことしていいの?
ユーザーに迷惑をかけるなら 無理やり出さない そんなことしていいの?
まとめ • リアルISUCONが始まったら解決に向けて取れる手段は全 部とっていきましょう! • 解決できない場合、最終的に不利益を被るのはエンドユーザ なのでそれは避ける
ご清聴ありがとうございました!
おまけ
リアルISUCONで 絶対やってはいけないこと
FAILしない!!
おまけ1 • ISUCONでは最後運営側の再起動試験がある ◦ インフラ再起動してテスト走行 ◦ そこでNGになるとFAIL扱いで失格 • リアルISUCONでのFAILは罪
リアルISUCONを終えた後
おまけ2 • 振り返りやりましょう! • 対応した知見を共有しましょう!
本当に終わり!