Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ISUCON 11 参考実装 PHP 移植の苦労?話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shohei Okada
October 04, 2021
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ISUCON 11 参考実装 PHP 移植の苦労?話
2021/10/02, 03 開催「PHP Conference Japan 2021」(
https://phpcon.php.gr.jp/2021/)の懇親会
LT 資料です。
Shohei Okada
October 04, 2021
More Decks by Shohei Okada
See All by Shohei Okada
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
410
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
1.2k
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
2.4k
パスワードのハッシュ、ソルトってなに? - What is hash and salt for password?
okashoi
3
460
設計の考え方 - インターフェースと腐敗防止層編 #phpconfuk / Interface and Anti Corruption Layer
okashoi
11
6.7k
"config" ってなんだ? / What is "config"?
okashoi
0
2k
ファイル先頭の use の意味、説明できますか? 〜PHP の namespace と autoloading の関係を正しく理解しよう〜 / namespace and autoloading in php
okashoi
4
2.3k
MySQL のインデックスの種類をおさらいしよう! / overviewing indexes in MySQL
okashoi
0
1.5k
PHP における静的解析(あるいはそもそも静的解析とは) / #phpcondo_yasai static analysis for PHP
okashoi
1
1.6k
Other Decks in Programming
See All in Programming
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
280
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.3k
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
220
contenteditable と日本語入力に向き合う
colorful12
0
200
[Dev Group Paris Octobre 26] Agentforce, SIforce, Claudeforce, Slackbot… on s'y retrouve ?
nabondance
0
110
Next.js: The final boss of Web Performance
guaca
0
280
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
R8 の設定見直しでアプリサイズ削減
andpad
0
220
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
180
Domain-Driven Transformation
hschwentner
2
2.3k
phperだってパンチカードでコーディングしたい
o0h
PRO
0
350
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
The Curious Case for Waylosing
cassininazir
1
570
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Why Our Code Smells
bkeepers
PRO
340
58k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
310
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
30 Presentation Tips
portentint
PRO
1
430
Transcript
*46$0/ࢀߟ࣮ 1)1Ҡ২ͷۤ࿑ʁ 1)1$POGFSFODF+BQBO࠙ձ !PLBTIPJ
Γ·ͨ͠
Γ·ͨ͠ ۓுͯ͠·ͱʹͤͳ͔ͬͨ
͜ͷͰϦϕϯδʂ
Ͱ͖Δ͚ͩαʔυύʔςΟϥΠϒϥϦͷґଘΛ࠷খʹ Ͱ *46$0/ͰഊࢭΛ࡞Δͷ 5PP.VDIͳͷͰΒͳ͍ ҙࣝͨ͜͠ͱ ༧બͷ DPNQPTFSKTPO ຊઓͷ DPNQPTFSKTPO
ଞͷݴޠͱͷใྔͷࠩҟΛͰ͖Δ͚ͩݮΒ͢ ʢओཁϩδοΫʣϑΝΠϧʹू w ͨͩ͠ʮSPVUFTQIQͱ🤔ʯͬͯͳͬͨ ͍͍ͪͪܕΛ͚Δ w ͜Ε͕࣮ࣗ͢Δ্Ͱॿ͚ʹͳΔ ҙࣝͨ͜͠ͱ
w 1)1ͱͦΕҎ֎ͰͦͦΞʔΩςΫνϟҧ͏͠ w ΤϥʔϋϯυϦϯά·ΘΓʢΦϦδφϧ (Pʣ w ϥΠϒϥϦͷΤϥʔͷग़͠ํ͕ (Pͱҟͳͬͯ ֎͔ΒݟͨڍಈҰகͤ͞ͳ͍ͱ͍͚ͳ͍ w
ྫ֎Λ͏ͱܭࢉྔͷίετ૿ʢҰԠʣ͋Δ w ࡉ͔ͳͱ͜ΖͰม໊ͳͲ ˠաڈͷ *46$0/ͷ 1)1࣮Λࢀߟʹͭͭ͠όϥϯεΛऔΔ ͍ͨΜͩͬͨ͜ͱ ΦϦδφϧ࣮ͷ࠶ݱ WT1)1ͷྲّྀ
͏ͷ͓ͳ͡Έ 1%0 w 1%0'&5$)@#05)Ͱྻͷ··ѻ͏ ˠܕͷԸܙʹ༩Εͳ͍ w 1%0'&5$)@$-"44ˠ͕จࣈྻʹͳͬͯ͠·͏ ʢCPPMͱ͔ %BUFUJNF*NNVUBCMFʹม͔ͯ͠Β֨ೲ͍ͨ͠ʣ ˠΛύοΫ͢Δ
DMBTTʹ GSPN%C3PX ͱ͍͏ TUBUJDϝιουΛੜ ͨ͠ʢ+40/͔Βͷมಉ༷ͳײ͡ʹͨ͠ʣ ʜʜ͕ɺ͜Ε͕݁ߏ໘ ͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍
(PͰ͜ΕͰࡁΉఆ͕ٛ ͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍
͜͏͡Ό ͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍
༧બͰͷൺֱ w NBJOHPߦɺ͏ͪߏମఆ͕ٛ ߦ w SPVUFTQIQߦɺ͏ͪΫϥεఆ͕ٛ ߦ ˠΫϥεͷఆ͚ٛͩͰ
ഒ͍ۙྔͷίʔσΟϯά͕ඞཁʹ ͦ͏͍͑͜Ε 1)1💡 ͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍
͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍ "UUSJCVUFTͷྗ
͍ͨΜͩͬͨ͜ͱ %#͔Βऔಘͨ͠σʔλͷѻ͍ "UUSJCVUFTͷྗ ʮ͕ࣗ *46$0/ࢀՃऀͩͬͨΒɺ͜ͷ࣮ग़͖ͯͨΒΩϨΔΘʯ ͱࢥͬͨͷͰΊΔ
ϕϯνϚʔΧͱ͍͏ઈରਖ਼ٛͷΠϯςάϨʔγϣϯςετ͕ଘࡏ͢Δ w ʮݴޠΛशಘ͢Δڭࡐʯͱͯ͠ͷ *46$0/ࢀߟ࣮ͷՄೳੑ w ͨͩ͠ʢҠ২࡞ۀظؒʣϕϯνϚʔΧʹόά͋Δ Α͔ͬͨ͜ͱ
*46$0/ͷӡӦଆ͕ݟΒΕͨ w ӡӦࢹͷ౻ *46$0/ͷ͍ͳͲ w ͭΑ͍ͻͱͨͪͱҰॹʹࣄ͕Ͱ͖ͨ w ීஈ 1)1ॻ͍ͯͳ͍ͣͷਓ͔ΒʮFYFD ͩͱγΣϧܦ༝Ͱͷ࣮
ߦʹͳΔͷͰ (P࣮ͱൺͯύϑΥʔϚϯεʹѱӨڹͰ·͢Ͷʯ ͬͯݴͬͯ 13ඈΜͰ͘ΔʢϠό͍ʣ w IUUQTHJUIVCDPNJTVDPOJTVDPOGJOBMQVMM Α͔ͬͨ͜ͱ
ࣗͷΤΰΛଘʹ͚ͬͯίʔυॻ͚ͨ w 1)1Ͱʮཁ݅ͷଘࡏ͢ΔΞϓϦέʔγϣϯʯ͕ॻ͚ͨ w ͜͜·Ͱʮ͖ͪΜͱʯ1)1Λͬͨ͜ͱ࣮ແ͔͔ͬͨΕͳ͍ w 1%0ͷΦϓγϣϯΤϥʔϋϯυϦϯά w 04ίϚϯυΛ࣮ߦ͢Δͱ͖ͷؔͱΦϓγϣϯࢦఆ ʮίʔυͷ͕ͯࣗ͢ͷखதʹ͋Δʯײ֮
͜Μͳʹָ͘͠ίʔυΛॻ͍ͨͷ͍ͭͿΓͩͬͨͩΖ͏ Α͔ͬͨ͜ͱ
ॳظ࣮ͰͷείΞଞͷݴޠΑΓΊ w ΞʔΩςΫνϟ͕ҧ͍ͬͯͨΓɺ1)1'1.ͷઃఆ͕΄΅σϑΥϧτ ͩͬͨΓɺํͳ͍෦͋Δ͔͠Εͳ͍͕ w 1)1ΛબΜ͚ͩͩͰʮएׯʯෆརͱ͍͏ͷչ͍͠ w 1)1ίʔυ্ͷͱ͔͋ͬͨΓ͢Δ͔༗ࣝऀͷҙݟΛฉ͖͍ͨ ؾʹͳ͍ͬͯΔ͜ͱ
࣍ճͷࢀߟ࣮Ҡ২ʹ ཱީิ͠·ͤΜ͔ʁ ʢࢲ༨༟͕͋ΕԠื͢ΔͭΓʣ