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
メルカリの超高速開発を支えるPHP (PHPCon2014)
Search
Tatsuya Tsuruoka
October 11, 2014
Technology
17
25k
メルカリの超高速開発を支えるPHP (PHPCon2014)
PHPカンファレンス2014のスライドです。
Tatsuya Tsuruoka
October 11, 2014
Tweet
Share
More Decks by Tatsuya Tsuruoka
See All by Tatsuya Tsuruoka
「メルカリ アッテ」を支える Google App Engine と Golang
ttsuruoka
18
12k
GoとGAEによるWebアプリケーション開発(Go Con 2016 Spring)
ttsuruoka
12
8.2k
アッテ開発の技術 : Golang と Google App Engine
ttsuruoka
20
48k
メルカリ開発の歴史
ttsuruoka
2
2.1k
LT_有給とって温泉に行こう
ttsuruoka
0
240
Other Decks in Technology
See All in Technology
SmartHRの複数のチームにおけるMCPサーバーの活用事例と課題
yukisnow1823
1
700
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
65k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
The Ultimate Showdown of Database Migration Tools
asm0dey
0
130
Project Referencesを活用した実行環境ごとのtsconfig最適化
itatchi3
1
220
Cline&CursorによるAIコーディング徹底活用―Live Vibe Coding付き
pharma_x_tech
3
1.4k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
1
7.1k
テスト設計チュートリアル ちびこん編 ’25
omn
1
430
それでもぼくらは貢献をつづけるのだ(たぶん) @FOSS4GLT会#002
furukawayasuto
1
220
GitHub ActionsをTypeScriptで作ろう!
sansantech
PRO
2
360
Introduction to Bill One Development Engineer
sansan33
PRO
0
230
VueUseから学ぶ実践TypeScript #TSKaigi #TSKaigi2025
bengo4com
3
5.2k
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.3k
How GitHub (no longer) Works
holman
314
140k
The Cost Of JavaScript in 2023
addyosmani
49
7.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
We Have a Design System, Now What?
morganepeng
52
7.6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Faster Mobile Websites
deanohume
307
31k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Statistics for Hackers
jakevdp
799
220k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
ϑϦϚΞϓϦʮϝϧΧϦʯͷ ߴ։ൃΛࢧ͑Δ1)1 גࣜձࣾϝϧΧϦ ϓϦϯγύϧΤϯδχΞ Ԭୡ UTVSVPLB!NFSDBSJBQQDPN !
ࠓճ͓͢Δ͜ͱ αʔόߏ Ͳ͏ͬͯεέʔϧ͖ͯͨ͠ʁ ϝΠϯݴޠ1)1 ͳͥ1)1 1)1ͷྑ͍ͱ͜Ζ ͲΜͳߟ͑ํͰ։ൃ͖͔ͯͨ͠
εϐʔυͷॏཁੑՁΛੜΉίʔυͱ
ʮϝϧΧϦʯʹ͍ͭͯ
None
w ݄ɺձࣾઃཱ w ݄ɺΞϓϦެ։
w ຖສ݅Ҏ্ͷग़ w ݄ؒྲྀ௨ֹेԯԁ w ςϨϏ$.์өத ສ%-ୡ
None
αʔόߏ
αʔόߏ w ݱࡏͷαʔόɿ w -#ɺ8FCɺ%#ɺόονɺ ΩϡʔϫʔΧʔɺΩϟογϡ w ϐʔΫ࣌ϦΫΤετඵҎ্Λॲཧ
Ͳ͏ͬͯεέʔϧ͖ͯͨ͠ʁ ! w ڈͷ1)1ΧϯϑΝϨϯεͷࠒɺ αʔό͚ͩ අ༻ɿສԁ݄
Ͳ͏ͬͯεέʔϧ͖ͯͨ͠ʁ w Ͱഒʂʢڈ͕ͳͷͰʜʣ w ݱࡏͷߏୈࡾੈ w ୈҰੈɿʹશ෦ w ୈೋੈɿ8FCͱ%#ͳͲ༻్ผʹ w
ୈࡾੈɿ-#ΩϟογϡͰෛՙࢄ
γϯϓϧˍϛχϚϜ w 8FCαʔόʹͪΖΜ1)1 w "QBDIF NPE@QIQ .Z42-ͷ Ͳ͜ʹͰ͋Δ؆୯ͳߏ w ୈҰੈͷߏͦΕ͚ͩ
Ωϟογϡαʔόͳ͠
γϯϓϧˍϛχϚϜ w ୈࡾੈͷߏͰෛՙࢄΛຊ֨Խ -#ɿOHJOY Ωϟογϡɿ.FNDBDIFEɺ3FEJT Ωϡʔɿ2.
γϯϓϧˍϛχϚϜ w ेͳ࣮͕͋ΔϛυϧΣΞ͚ͩͰ ߏ͞Ε͍ͯΔ w .Z42-ɺ.FNDBDIFEɺ3FEJT 1)1͔Β؆୯ʹ͑Δ
ϝΠϯݴޠ1)1
ͳͥ1)1 w ۀϝϯόʔͱܨ͕͍ͬͯΔ։ൃऀͷ ଟ͕͘1)1։ൃऀͩͬͨ w ΞϓϦΛ։ൃ͍ͯͨ࣌͠Ͱ ࠷։ൃϦιʔε͕֬อ͔ͬͨ͢͠ w ͭ·Γɺ୯ʹۙͩͬͨ
ͳͥ1)1 w ҆қͳཧ༝ʹݟ࣮͑ͯॏཁͳͷͰʁ w ྲྀߦΛ͍͔͚ͳ͍ w ݱ࣮తͳΛղܾ͍ͨ͠ͷͰ͋ͬͯ ϞμϯͳݴޠΛۦ͢Δ͜ͱΛ తʹ͠ͳ͍
ͳͥ1)1 w 8PSE1SFTT͕1)1Ҏ֎ͷݴޠͰ࡞ΒΕͯ ͍ͨΒɺࠓ΄Ͳͷ͍ͳ͔ͬͨͷͰ w ۙʹղܾ͍ͯ͠Δ͜ͱͷՁΛ ͬͱೝΊΑ͏
1)1ͷྑ͍ͱ͜Ζ w 8FCαʔόͰͷॲཧेʹߴ w ϝϧΧϦฏۉϨεϙϯελΠϜϛϦඵ w ؆୯ͳͷʹ࣮༻త w 1)1ΛΒͳ͍։ൃऀͰɺผͷݴޠ Λ͍ͬͯΕ͋ͬͱ͍͏ؒʹशಘ
w ͨͩ͠8FCݴޠͰ͋ΔͨΊۤखͳ͜ͱ ͨ͘͞Μ͋Δ w ฒྻॲཧɺৗறϓϩηεɺFUD w ͦΕಘҙͳݴޠʹͤΔ
w 1)1͚ͩͰͯ͢Λ࡞Δ͜ͱʹ ͩ͜ΘΒͳ͍ w 1)1͕ۤखͳॲཧɺ 3VCZɺ1ZUIPOɺ(PͳͲ͍͚ͬͯ0,
ͲΜͳߟ͑ํͰ։ൃ͖͔ͯͨ͠
Ұ൪େࣄͳ͜ͱʮεϐʔυʯ
ϝϧΧϦ։ൃͷۂઢ ࠓ͜͜ ඪ ࣌ؒ ౸ୡ
w ͜Ε·ͰͷϝϧΧϦˠͷஈ֊ w ։ൃऀͷׂɺ։ൃͷߟ͑ํ ஈ֊ʹΑͬͯมΘΔ w ˠͰҰ൪େࣄͳͷ͕εϐʔυ
w ઌߦ͢Δڝ߹ ޙ͔Βͬͯ͘Δେࢿຊͷڝ߹ w ϦϦʔε͢Δ·Ͱͷεϐʔυͱɺ ϦϦʔε͔ͯ͠ΒͷεϐʔυͰ ࠩΛ͚Δ͔͠ͳ͍ w ૉૣ͘ग़ͯ͠ɺ୭͔ʹͬͯΒͬͯɺ ՁΛߴΊ͍ͯ͘
ͳͥʮεϐʔυʯ͕େࣄͳͷ͔
ͳͥʮεϐʔυʯ͕େࣄͳͷ͔ w εϐʔυ͕େࣄͳ͜ͱΈΜͳ͔͍ͬͯΔ w ʮͬͱΏͬ͘Γ࡞Εྑ͔ͬͨʯ ͱ͍͏͜ͱ͋Γ͑ͳ͍
w ஸೡʹ࡞ΒΕ͍ͯͯྑ͘Ͱ͖͍ͯΔ͚Ͳ ୭͍ͬͯͳ͍αʔϏε ҙຯ͕ͳ͍ɻɻ ελʔτΞοϓͷੈքͰʣ
ʮεϐʔυʯΛग़͢͜ͱͷ ͠͞
ݶΒΕͨϦιʔεͰͲ͏࡞Δʁ w ։ൃऀɺ༧ࢉɺ࣌ؒ ͲΕΓͳ͍ͷ͕;ͭ͏
εϐʔυΛੜΈग़͢ ͭͷߟ͑ํ
໎ͬͨΒ୯७ͳํΛબͿ
໎ͬͨΒ୯७ͳํΛબͿ w ٕज़બఆ͢Δͱ͖ʹΑ͋͘Δ w ߴػೳ͚ͩͲෳࡶͳͷWTػೳ͚ͩ Ͳ୯७ͳͷ w ྫɿߏཧπʔϧ$IFGWT"OTJCMF
໎ͬͨΒ୯७ͳํΛબͿ w Ͱ͖ΔݶΓใΛूΊܾͯΊΒΕͳ͍ͱ͖ ʮػೳ͚ͩͲ୯७ͳͷʯΛબͿ w ୯७Ͱ͋Δ͜ͱֶशίετ͕͍ͷ ظతʹՌ͕ग़Δ w ʙઌͷϝϦοτΑΓࠓ͕େࣄ
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢ w ͍͔ͭΘΕΔ͔͠Εͳ͍ίʔυΛ ࠓ४උ͓͍ͯͯ͠ʜ ेதീΘΕͳ͍ɻɻ ݁ہɺԼͨ࣌ؒ͠ճऩͰ͖ͣʣ
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢ w ͍ͭདྷΔ͔͔Βͳ͍ະདྷͷ͜ͱΑΓɺ ͙͢ͷલͷޭͷ΄͏͕ѹతʹॏཁ w ͷલͷޭ͕͋ͬͯ࢝Ίͯɺ কདྷΛݟӽͨ͠վળΛ͢Δҙຯ͕ग़ͯ͘Δ
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢ w ࠷ߴΛࢦ͢ͱɺ ͍ͭ·ͰܦͬͯऴΘΒͳ͍ w ׂͰग़ͯ͠ɺϢʔβͷԠΛݟΔ͖
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢ %POFJTCFUUFSUIBOQFSGFDU ᘳΛࢦ͢ΑΓɺ·ͣऴΘΒͤΖ 'BDFCPPLͷϞοτʔͷͻͱͭ
࠷ߴͩͱࢥ͏ͷͷ ׂͰग़͢ ૣ͗͢Δ࠷దԽॾѱͷࠜݯ %&,OVUI w ࣅ͍ͯΔ֨ݴɾߟ͑ํ͕ͨ͘͞Μ͋Δ :"(/* :BL4IBWJOH
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ w ϝϧΧϦͷ߹ɺϗʔϜը໘ʹදࣔ͞ΕΔ ͷҰཡɺग़ߪೖͷૢ࡞ w ਅͬઌʹ࡞Γ࢝Ίͯɺ ԿԿ࡞Γͳ͓͞Εͯચ࿅͞Εͨ
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ w ͋Δ෦ʹϑΥʔΧε͢Δͱ͍͏͜ͱɺ ΘΓʹԿΛলུ͢Δ͔ͱ͍͏͜ͱ
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ w ΞϓϦެ։Λٸ͙ͨΊɺ ΓࠐΉػೳΛݶք·Ͱߜͬͨ ެ։࣌ͷ"1*ͷ छྨ ݱࡏͷ छྨ ΄΅ഒ
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ w େʹলུͨ͜͠ͱɿ ެ։࣌ͷΠϯϑϥ w ͘͞ΒΠϯλʔωοτͷ ߴੑೳͳઐ༻αʔόʹͯ͢٧ΊࠐΈ
࠷ॏཁͳ͜ͱʹ ϑΥʔΧε͢Δ w ຊ൪ڥΛͰߏஙͰ͖ͨ w ҆Ձˍखؒͳ͔ͬͨͷͷɺ ϲ݄Ͱෛՙͷݶքʹ w ͔͠͠ɺΠϯϑϥ४උظ͕ؒݮͬͨ͜ͱɺ ݎ࿚ͳΠϯϑϥΛ࠷ॳ͔Β४උ͢ΔΑΓ
ͣͬͱՁ͕͋Δ͜ͱͩͬͨ
εϐʔυͷͨΊʹ ͯ͢Λࣺͯͳ͍Α͏ʹؾΛ͚ͭΔ
ςετʹ͍ͭͯ w ςετলུ͗͢͠ͳ͍ w 1)16OJUͰͲΜͳςετΛॻ͔͘ w අ༻ରޮՌͷߴ͍ςετΛॻ͘
අ༻ରޮՌͷߴ͍ςετ w ։ൃऀͷηϯε͕ΘΕΔɻɻ w ະདྷͷ։ൃऀ ؚࣗࣗΉ ͕ ͲΕ͚ͩٹ͑Δ͔ w ΧόϨοδॏࢹͰͳ͘
ΤϯυπʔΤϯυͰਖ਼͠͞Λςετ͢Δ
අ༻ରޮՌͷߴ͍ςετ w ΤϯυπʔΤϯυͷςετ͕͋Εɺ ҆৺ͯ͠ݩίʔυΛେʹมߋͰ͖Δ w ༏Εͨςετ͕͋Εɺ εϐʔυͷͨΊʹίʔυ࣭͕٘ਜ਼ʹͳͬͯ ڐ༰Ͱ͖Δ
·ͱΊ
·ͱΊ w 1)1Ͱૉૣ͘ɺϋΠύϑΥʔϚϯεʹɺ εέʔϧ͢ΔαʔϏεΛ࡞ΕΔ w ࣗ৴Λͬͯ1)1ͰϓϩμΫτΛ࡞Γ· ͠ΐ͏ʂ
w ·ͨޙɺ1)1ίϛϡχςΟʹ ϑΟʔυόοΫͰ͖ΔΑ͏ʹؤுΓ·͢ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠