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 Paas Sqaleを支える技術2016
Search
KONDO Uchio
May 21, 2016
Technology
2
3.5k
PHP Paas Sqaleを支える技術2016
@PHPカンファレンス福岡 2016
http://phpcon.fukuoka.jp/
KONDO Uchio
May 21, 2016
Tweet
Share
More Decks by KONDO Uchio
See All by KONDO Uchio
大規模レガシーテストを 倒すための CI基盤の作り方 / #CICD2023
udzura
5
2.4k
Ruby x BPF in Action / RubyKaigi 2022
udzura
0
250
Narrative of Ruby & Rust
udzura
0
220
開発者生産性指標の可視化 / pepabo-four-keys
udzura
3
1.7k
Talk of RBS
udzura
0
450
Re: みなさん最近どうですか? / FGN tech meetup in 2021
udzura
0
780
Dockerとやわらかい仮想化 - ProSec-IT/SECKUN 2021 edition -
udzura
2
730
Device access filtering in cgroup v2
udzura
1
910
"Story of Rucy" on RubyKaigi takeout 2021
udzura
0
830
Other Decks in Technology
See All in Technology
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
10
4.7k
ビズリーチにおけるリアーキテクティング実践事例 / JJUG CCC 2025 Spring
visional_engineering_and_design
1
130
LLM時代の検索
shibuiwilliam
2
180
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
2
7.8k
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
MobileActOsaka_250704.pdf
akaitadaaki
0
130
React開発にStorybookとCopilotを導入して、爆速でUIを編集・確認する方法
yu_kod
1
280
FOSS4G 2025 KANSAI QGISで点群データをいろいろしてみた
kou_kita
0
400
怖くない!はじめてのClaude Code
shinya337
0
400
fukabori.fm 出張版: 売上高617億円と高稼働率を陰で支えた社内ツール開発のあれこれ話 / 20250704 Yoshimasa Iwase & Tomoo Morikawa
shift_evolve
PRO
2
7.8k
OPENLOGI Company Profile for engineer
hr01
1
34k
無意味な開発生産性の議論から抜け出すための予兆検知とお金とAI
i35_267
4
13k
Featured
See All Featured
Designing for Performance
lara
610
69k
Optimizing for Happiness
mojombo
379
70k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
4 Signs Your Business is Dying
shpigford
184
22k
Faster Mobile Websites
deanohume
307
31k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
820
Testing 201, or: Great Expectations
jmmastey
43
7.6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
BBQ
matthewcrist
89
9.7k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Transcript
d͖Έ͚ͩͷ͍͖͞ΐ͏ͷ1)1Λͭ͘Ζ͏ʂd GMO Pepabo, Inc. Uchio Kondo 2016/05/21 PHPΧϯϑΝϨϯεԬ2016!!1 1)11BB4ʮ4RBMFʯ Λࢧ͑Δίϯςφ
ͳͲ ٕज़
NF
None
ۙ౻͏͓ͪ !VE[VSB(.0ϖύϘॴଐ ٕज़ج൫νʔϜ Ԭࢧࣾۈ 'VLVPLBSC
3BJMT(JSMT'VLVPLB૯߹ࡶ༻ίʔν·ͱΊ
ஶ࡞Ͱ͢
ੴΛ͛ͳ͍Ͱʂ
'"2 2ॳΊͯຊ֨తʹ৮ͬͨϓϩάϥϛϯάݴޠ ʁ "1)1Ͱ͢ʂ
None
ൃදͷલʹ
1)1
4RBMFͰఏڙ։࢝͠·͢ʂ ˞ ЌϦϦʔεͱ͍͏͜ͱͰΑΖ͓͘͠ئ͍͠·͢ɻ
ʂʂʂʂʂʂʂʂʂʂʂ
None
ؓٳ
4RBMFͱ
None
4RBMF ͍ΘΏΔɺ1BB4 4'51(JUʹΑΔσϓϩΠ 3VCZͱ1)1ʹରԠ͍ͯ͠Δ
ٕज़ͷৄࡉ !IJCPNB͞ΜʹΑΔൃදࢿྉ͕͋Γ·͢ 1BB4ͷ࡞Γํ4RBMFͷ߹ IUUQXXXTMJEFTIBSFOFUIJCPNBTRBMFQBBT
Ҏ্Ͱ͢
͑ͬʜʜ
͋Ε͔Β
͋ͷαʔϏεࠓ
ۙگใࠂ
࠷͍ۙͬͯΔ͜ͱ *BB4͔Β/ZBIʹҠઃ͍ͯ͠Δ ͍ͭͰͱ͍͏͔ɺγεςϜ৽݉Ͷ͍ͯΔ ࢥͬͨҎ্ʹಈ͍ͯΔɻηΩϡϦςΟͰෆ҆ͳ ͱͭ͜Ϳͭͭ͠ؾ࣋ͪʹͳ͍ͬͯΔ
/ZBIͬͪʁ ࣾͷϓϥΠϕʔτɾΫϥυ ൃදࢿྉଟɻ!UONU͞ΜͷεϥΠυͳͲ IUUQTTQFBLFSEFDLDPNUONUQFQBCPT QSJWBUFDMPVEOZBIBGUFSUIBU
1)1ͷՃ ͦͯ͠ 1)1ͷͳͷͰޙ΄Ͳ·ͱΊͯɻ
ͦͷ΄͔ ϛυϧΣΞ04ͷΞοϓάϨʙυݕূத $FOU04 ,FSOFM -9$
ͳͲͳͲʜʜ
-9$
ίϯςφٕज़
ίϯςφ ͬͯͦͦԿͳͷ
ྑ͍ࢿྉ͕͋Γ·͢ -JOVYίϯςφͷجૅ !ίϯςφܕԾԽͷใަձJOԬ IUUQTTQFBLFSEFDLDPNUFOGPSXBSEUI DUTUVEZ
Ҏ্Ͱ͢
͑ͬʜʜ
͏ͪΐͬͱʜ 4RBMFͰ͜͜·Ͱड़͖ͯͨ-9$Λ͔ͭͬ ͯɺʮϢʔβίϯςφʯΛ্ཱ͍ͪ͛ͯ·͢ɻ ҙͱͯ͠ɺҎલͷόʔδϣϯΛར༻ͯͨ͠Γ͢Δ ͷͰɺݹ͍Λ͍ͯ͠Δ͔ʜʜ
ίϯςφͷཧղͷલఏͱͯ͠ -JOVYίϯςφɺ୯Ұͷػೳͱ࣮ͯ͠͞Ε ͍ͯΔΘ͚Ͱͳ͍ɻ DHSPVQ -JOVYOBNFTQBDF ϑΝΠϧγεςϜͷִ
DISPPU RVPUB $BQBCJMJUJFT
ͻͱͭͻͱͭ খ͞ͳɺγϯϓϧͳػೳ
DHSPVQ $POUSPM(SPVQͷҙ ϗετͷ༷ʑͳཧϦιʔεʹର͢Δ੍ݶΛ͢ Δ $16ɺϝϞϦɺ#MPDL*0
DHSPVQͷྺ࢙ DHSPVQ݄ʹ(PPHMFͷΤϯδχ ΞʹΑͬͯ࠷ॳͷύον͕ߘ͞ΕɼΧʔ ωϧͰ࠷ॳͷϚʔδ͕ͳ͞ΕͨػೳͰ͢ɻ ʹϦϦʔε͞Εͨ3FE)BU&OUFSQSJTF -JOVYʹ͜ͷػೳ͕ࡌ͞Εʜ SFGTIUUQHJIZPKQBENJOTFSJBMMJOVY@DPOUBJOFST
-JOVYOBNFTQBDF 04Λ͏ͨΊͷ༷ʑͳϦιʔεΛִ͢Δ ͋ΔϓϩηεͷOBNFTQBDFΛɺ΄͔ͷϓϩη ε͔Βݟ͑ͳ͘Ͱ͖Δ ϚϯτϙΠϯτɺ*1$ɺϢʔβʔɺωοτϫʔ Ϋ
ϑΝΠϧγεςϜपΓͷִ DISPPU ϑΝΠϧγεςϜͷΛมߋɺݟ͑ΔॴΛม͑Δ RVPUB YGT@RVPUB
ϑΝΠϧγεςϜͷར༻ΛϓϩδΣΫτ͝ͱʹ੍ݶɺϨ ϙʔτͰ͖Δ
-JOVYDBQBCJMJUJFT εʔύʔϢʔβͷݖݶΛׂ͠ɺڐՄΛ༩͑ͨΓ ېࢭͨ͠ΓͰ͖Δ ྫ$"1@4:4@5*.& γεςϜΫϩοΫͷมߋΛڐՄ͢Δ$BQBCJMJUZ ͜ΕΛୣ͑ɺϗετͷ࣌ؒมߋ͕Ͱ͖ͳ͍
ୣΘΕͨϓϩηεͰEBUFTίϚϯυΛଧͬͯΈΑ͏ %PDLFSͳͲͰࢼͯ͠Έ·͠ΐ͏
͜ΕΒΛΈ߹ΘͤΔͱʜ
͔͋ͨʮԾڥʯͷ Α͏ʹѻ͑Δ
':*ԾڥͬͯԿͩ ࣮ଶɺ 04Ϧιʔεͷִ OBNFTQBDF DISPPU ʴ ੍ݶ DHSPVQ
DBQBCJMJUJFT ͔͠͠ɺϢʔβ͔ΒݟΔͱɺ͍͍ͩͨಠཱͨ͠ 04ͷΑ͏ʹѻ͑ͨΓ͢ΔͷͰɺ͔Γ͢͞༏ ઌͰҰछͷʮԾڥʯͱݺΜͩΓ͢Δ
۩ମతͳ -9$ͷ͍ํ
ϑΝΠϧγεςϜͷڞ༗ ΄ͱΜͲSFBEPOMZͰCJOENPVOU͠ͳ͓ͯ͠ ͍Δ ϢʔβྖҬΛݶఆ͢ΔʢRVPUB͢Δʣ SFBEPOMZͳͱ͜Ζڞ༻ ڞ༻ͳͷͰɺมߋ͕શίϯςφʹ͙͢ʹө͢
Δɻ1)1όΠφϦͷՃ͕Γ͍͢
ར༻͢Δ$16 ίϯςφ࡞࣌ʹܾΊ͏͍ͪͯ͠Δɻ ࠓͷͱ͜Ҡઃखಈʜʜ ͳΊΒ͔ʹ͍ͨ͠Ͱ͢Ͷ
GPSLCPNCରࡦ ಠࣗύονΛར༻ NJ[[Z͞ΜͷεϥΠυ IUUQCJUMZ7:(D ։ൃͷຊےʹ͋ΔDHSPVQͷઃఆ߲ʹ͍ͨ͠ ʢͷͪ΄Ͳʣ
Φʔόʔϔου͋Δʁ
؆୯ͳϕϯν έʔε DISPPUͷΈɺ$16ɺ(#NFN έʔε -9$Ͱ$16ɺ(#NFNར༻
ωοτϫʔΫͷͤͣ ͦͷଞͷ݅ಉ͡ IUUQE QIQGQN 1)1 $FOU04 1)1QSJOUl)FMMPzఔͷॲཧ "# XJUILFFQBMJWF
None
ߟ ΞʔΩςΫνϟͷҧ͍ ʢDISPPUͷΈ͔ɺ-9$Λܦ༝͢Δ͔ʣ ʹΑΔΦʔόʔϔου֬ೝͰ͖ͳ͍ɻ গͳ͘ͱ΄ͱΜͲͷ߹ଞͷϘτϧωοΫ͕ ઌʹདྷΔͱݴ͑ΔͩΖ͏ ωοτϫʔΫϑΝΠϧγεςϜͷΛ͍ͯ͠ͳ͍͜ͱ͕
ޮ͍͍ͯΔՄೳੑ͕͋Δ
1BB4Ͳ͏ͬͯಈ͘ ͱݴ͏
ͳʹͱ͋ΕίϯςφΛ࡞Δ ίϯςφΛ࡞ΔͱҎԼͷͷ͕࡞ΒΕΔ ίϯςφͷSPPUGT 4'51HJUͷϑΝΠϧγεςϜʢσϓϩΠ༻ʣ %/4Ϩίʔυ
Ϣʔβͷ͏%#
ͱ͜ΖͰ 4RBMFࣗମͷ8FCΞϓϦέʔγϣϯ 3⚪CZ⚪O3⚪JMT Ͱ͢
None
3FTRVF 3BJMTͷ༗໊ͳδϣϒΩϡʔϓϥάΠϯ جຊతʹɺίϯςφͷϓϩϏδϣχϯάͷॲཧ ɺδϣϒΩϡʔͰඇಉظԽ͞Ε͍ͯΔ ͔ͭɺϗετؒ3FEJTͷδϣϒΩϡʔͷΈͰ ͭͳ͕͍ͬͯͯɺεέʔϧ͍͢͠
͍͘ΒͰ ಉ͡ϩʔϧΛՃՄೳ CVJMEʜ VTFSTʜ HJUʜ
ίϯςφͷSPPUGTΛͲ͏࡞Δʁ $IFGXJUIDISPPUͰͬ͘͞Γͱ ͜͜Φʔόʔϔουগͳ͘ ϑΝΠϧγεςϜͷཧʹಛԽͨ͠ϨγϐΛॻ͘ αʔϏεཧͱ͔͓͍ͱ͘
SPPUͱͳΔɺجຊతͳϑΝΠϧγεςϜΛ࡞Δ ˠͦͷޙɺϢʔβ͕͍͡ΕΔσΟϨΫτϦҎԼΛ࡞Δ ʢIPNFTRBMFͳͲʣ
HJUQVTIͳͲͰσϓϩΠΛ͢Δ SFDFJWFIPPL͕ىಈ͢Δ ͬͺΓ3VCZ ͦ͜ͰσϓϩΠϓϩηε͕Δ 3BJMTͳΒ
CVOEMFJOTUBMMBTTFUQSFDPNQJMFSTZOD 1)1୯ʹSTZOD DPNQPTFSͳͲEFQMPZޙͷIPPLΛఆٛͰ͖ΔͷͰͦ͜Ͱ
Ϗϧυδϣϒ3BJMTΞϓϦͷதʹ 3VCZͰ؆୯ͳ%4-Λ࡞͓ͬͯΓɺ Ճ͕ 3VCZJTUʹ ؆୯ʹݟ͑Δ ͦͷؾʹͳΕରԠݴޠΛ૿ͤΔ͔ ͪ͜Β͋ͱͰʜ
1)1ରԠͷ
3VCZͷ৽όʔδϣϯରԠ όΠφϦՃ SCFOWલఏ Ϗϧυ༻ͷεΫϦϓτ͕࡞ΒΕ͓ͯΓɺखॱ ཱ͍֬ͯ͠Δɻ ൺֱత؆୯ʹରԠͰ͖Δɻ
ίϛολձࣾʹࡏ੶͠ɺॆ࣮ͨ͠αϙʔτɻ
1)1ͷ৽όʔδϣϯରԠ ʢखهͦ͜Ͱ్Ε͍ͯΔʣ HJUIVCͷJTTVF
Ϗϧυखॱ͕ࣦΘΕ͍ͯΔ
Ͳ͏ͬͯࢲ 1)1όΠφϦΛՃ͔ͨ͠ʁ
ߟݹֶతௐࠪۀ *TTVFʹඍົʹ͍ͬͯͨͷͰɺͦ͜ͰશΛ ௫Ή 3VCZͱಉ༷QIQFOWϕʔεΒ͍͠ Ϗϧυͯ͠UH[ͰݻΊΔɺجຊγϯϓϧʹͬͯͦ͏ EFpOJUJPOɺ͍·ࣦΘΕͨαʔόʹʜ
ʜʜ
ϏϧυΦϓγϣϯͷௐࠪ طଘͷόΠφϦ ͷQIQJOGP ͔Βऔಘ σϑΥϧτͷϏϧυͱΦϓγϣϯͱൺֱ TRMJUFରԠͷ֦ுͳ͘Ͷʁʢ͔͔͠Βʣ
ௐͯɺ4RBMFͷαϙʔτର͔Βམͱ͢ɻ
1&"3ύοέʔδ ϚχϡΞϧʹ͋ΔͭΛҰ௨ΓೖΕΔ IUUQTTRBMFKQTVQQPSUNBOVBMQIQ όʔδϣϯࢥ͍ͬͯ৽͘͢͠Δ QFBSίϚϯυࣗମϢʔβ͞Μ͕ୟ͚ΔΜͰ
ͬͪ͜εΫϦϓτԽ
NFNDBDIFE֦ு 1)1ͩͱQFDMͷͭ͡ΌͩΊΆʜʜ HJUIVC͔Βऔͬͯ͘ΔͱϏϧυͰ͖ͨɻͦΕΛ ͏
ͳΜ͔͔ΒQIQGQNͷઃఆมΘͬͨʁ :FUBOPUIFS͏⚪Β͞Μʹಥܸͨ͠
None
ͱ͍͏͜ͱͰݕূՄೳͳ ঢ়ଶʹ࣋ͬͯߦͬͨ
ͯ͞ɺͲ͏ͩΖ͏ʜʜ
None
8PSE1SFTT͕ಈ͍ͨ
ओཁͳ1)1ΞϓϦέʔγϣϯͷಈ࡞ͱ ֦ுͳͲΛςετͯ͠ϦϦʔεɻ
50%0 ࣮͍·ͩʹ͜ͷͷखॱΛεΫϦϓτԽࣗಈ ԽͰ͖͍ͯͳ͍ʜʜ ͜ͷखॱɺࣦ͏Θ͚ʹ͍͔ͳ͍ ୀ৬༧ఆͳ͍ͷͰΏͬ͘ΓΖ͏ʜʜ
͜Ε͔ΒΓ͍ͨ͜ͱ
ϐΧϐΧͷVTFSTΛͭ͘Δ VTFSTϢʔβఏڙαʔόʢϖύϘ༻ޠʁʣ $FOU04 LFSOFM ߟ͍͑ͯΔͷ
-9$
ͳͥϐΧϐΧʹ͍͔ͨ͠ -9$ͷόʔδϣϯΧʔωϧͷόʔδϣϯݹ ͗ͯ͢MYDBUUBDI͕ಈ͔ͳ͍ LFSOFM͕ݹ͍ˠQJEOBNFTQBDFͳ͍͔Βʂ MYD͕ݹ͍ˠOBNFTQBDFͷݶఆ͕Ͱ͖ͳ͍
ͳͥ OFUOT͍ͮΒ͍ $FOU04ͷJQSPVUFOFUOTରԠͯ͠ͳ͍ʜʜ ϐϯϙΠϯτͰͬͯΑΓηΩϡΞʹ͍ͨ͠
ͳͥ LFSOFMҎ߱Ͱɺίϯςφ୯ҐͰϓϩηε ͷ੍ݶ͕Ͱ͖ΔΑ͏ʹͳΔɻ ͜ΕɺGPSLCPNCύονͷΘΓͷػೳͱͯ͑͠Δɻ IUUQHJIZPKQBENJOTFSJBM MJOVY@DPOUBJOFST
ݱࡏଞʹ༷ʑͳύον͕͍ͨͬͯͯɺಈ͖ ͕औΓͮΒ͘ɺຊےͷϏϧυΛ͍͍ͨɻ
ରԠݴޠͷՃ OPEFHPMBOHΛಈ͔ͤΔͱ͔͍͍ͬ͜ গͳ͘ͱࣾͰ͍ग़͕͋Δ
)VCPUΛ ಈ͔͍ͨͧ͠ʂ
ՃͷΊͲཱͬͯΔ ݴޠ༻$IFGͷΫοΫϒοΫΛՃ ݴޠ༻ϏϧυखॱΛ3VCZ%4-ͰՃ ͦͷଞɺඍົʹઃఆΛՃ ͋ͱؾ߹Ͱݕূ
Կ͔͕ى͜Γͦ͏
͜Μͳײ͡ʜʜ
աڈʹՃͨ͜͠ͱͳ͍ɻ Δͧʂ
Ҏ্ɺΓ͍ͨͰ͢ Δͱݴͬͯͳ͍ ʜ
·ͱΊ
ϩϦϙοϓʂϨϯλϧαʔόʔΛ ΑΖ͓͘͠ئ͍͠·͢ʂʂ ৄࡉϒʔεͰʂʂ̍
4RBMFͬͯͶ
ίϯςφͱ͔1)1ʹ ؔ৺ͷ͋ΔਓΛืू͍ͯ͠·͢
ը૾ͳͲͷιʔε ը૾ɺϩΰ(.0ϖύϘΛ࢝Ίɺ֤ࣾɾஂ ମ͕ݖརΛॴ༗͢Δ߹͕͋Γ·͢ɻҾ༻ͷൣ ғͰͷར༻Λ͍ͯ͠·͢ɻ λΠτϧ$$ IUUQTQJYBCBZDPNKB&#&#&&" &#$&#"&"&#
&#&#&&"&#$ &#&%&#$&&## &"&&"&#"&"