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 11 参考実装 PHP 移植の苦労?話
Search
Shohei Okada
October 04, 2021
Programming
0
82
ISUCON 11 参考実装 PHP 移植の苦労?話
2021/10/02, 03 開催「PHP Conference Japan 2021」(
https://phpcon.php.gr.jp/2021/)の懇親会
LT 資料です。
Shohei Okada
October 04, 2021
Tweet
Share
More Decks by Shohei Okada
See All by Shohei Okada
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
1.1k
パスワードのハッシュ、ソルトってなに? - What is hash and salt for password?
okashoi
3
150
設計の考え方 - インターフェースと腐敗防止層編 #phpconfuk / Interface and Anti Corruption Layer
okashoi
10
3.3k
"config" ってなんだ? / What is "config"?
okashoi
0
1k
ファイル先頭の use の意味、説明できますか? 〜PHP の namespace と autoloading の関係を正しく理解しよう〜 / namespace and autoloading in php
okashoi
3
1.2k
MySQL のインデックスの種類をおさらいしよう! / overviewing indexes in MySQL
okashoi
0
770
PHP における静的解析(あるいはそもそも静的解析とは) / #phpcondo_yasai static analysis for PHP
okashoi
1
530
【PHPカンファレンス沖縄 2023】素朴で考慮漏れのある PHP コードをテストコードとともに補強していく(ライブコーディング補足資料) / #phpcon_okinawa 2023 livecoding supplementary material
okashoi
3
1.9k
その説明、コードコメントに書く?コミットメッセージに書く? プルリクエストに書く? - #phpconfuk 2023
okashoi
15
5.1k
Other Decks in Programming
See All in Programming
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1k
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
220
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
860
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1k
Honoとフロントエンドの 型安全性について
yodaka
7
1.5k
Django NinjaによるAPI開発の効率化とリプレースの実践
kashewnuts
1
250
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
820
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
8
1.3k
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
40
16k
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
900
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
590
ML.NETで始める機械学習
ymd65536
0
230
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Gamification - CAS2011
davidbonilla
80
5.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Being A Developer After 40
akosma
89
590k
Adopting Sorbet at Scale
ufuk
74
9.2k
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ίʔυ্ͷͱ͔͋ͬͨΓ͢Δ͔༗ࣝऀͷҙݟΛฉ͖͍ͨ ؾʹͳ͍ͬͯΔ͜ͱ
࣍ճͷࢀߟ࣮Ҡ২ʹ ཱީิ͠·ͤΜ͔ʁ ʢࢲ༨༟͕͋ΕԠื͢ΔͭΓʣ