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
「サーバーレス」ってなんだろう みんなでワイガヤ談義 / What is "serverless?" Wigaya discussion with everyone
Search
shiro seike
PRO
March 16, 2024
Programming
0
36
「サーバーレス」ってなんだろう みんなでワイガヤ談義 / What is "serverless?" Wigaya discussion with everyone
Ya8 2024
https://hachiojipm.connpass.com/event/304403/
shiro seike
PRO
March 16, 2024
Tweet
Share
More Decks by shiro seike
See All by shiro seike
地方こそサーバーレス、その意義に迫るサーバーレスPHP / Serverless PHP: The Rural Areas, and Why Serverless PHP Matters
seike460
PRO
2
61
サーバーレスらしさを意識した AWSにおける開発手法 / Development methodologies in AWS that are serverless-like
seike460
PRO
1
57
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
190
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
130
フルサーバーレスアーキテクチャの運用を重ねた先に見える価値 / The value that can be seen beyond the operation of a full serverless architecture
seike460
PRO
0
23
決断するための勇気、そのためのBacklog / Courage to make decisions, Backlog for that.
seike460
PRO
4
2.1k
Backlog API x Generative AI
seike460
PRO
0
88
とにかくHTTP3をライトニングに話す / Anyway, I'll talk to Lightning about HTTP3.
seike460
PRO
0
140
PHP Serverless Pattern
seike460
PRO
0
16
Other Decks in Programming
See All in Programming
Next.js App Router
quramy
14
2.3k
Revisiting the Hotwire Landscape after Turbo 8 @ RailsConf 2024, Detroit
marcoroth
3
600
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
220
Runtime Objects in Rust
mitsuhiko
0
210
AmperとFleetを使ったAndroidアプリ
yoppie
0
300
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
2
460
RustでAWS Lambda functionをいい感じに書く
taiki45
2
140
freeeのエンジニアが 就活で出そうな コーディングテストを 解説してみる
freee
0
150
TypeScriptのパフォーマンス改善
yajihum
12
4.9k
ソースコードを美しくたもつために ~コードレビューの認知限界を突破し、年間400リリースを達成する~
kotauchisunsun
1
150
TypeScriptから始める VR生活
tamagokakeg
2
110
Adding Security to Microcontroller Ruby
sylph01
0
140
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
457
32k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Debugging Ruby Performance
tmm1
70
11k
Building Effective Engineering Teams - LeadDev
addyosmani
33
1.9k
Building Your Own Lightsaber
phodgson
100
5.7k
Producing Creativity
orderedlist
PRO
338
39k
Building Adaptive Systems
keathley
32
1.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
Happy Clients
brianwarren
92
6.4k
Side Projects
sachag
451
41k
Ruby is Unlike a Banana
tanoku
96
10k
Transcript
!TFJLF ʮαʔόʔϨεʯͬͯͳΜͩΖ͏ ΈΜͳͰϫΠΨϠஊٛ :B
ࣗݾհ w ໊લɿਗ਼Ո࢙ w 5XJUUFSɿ!TFJLF w "84$PNNVOJUZ#VJMEFST TFSWFSMFTT w
Ԭ͔Βདྷ·ͨ͠ w झຯɿΧϯϑΝϨϯεࢀՃɺొஃ w ίϛϡχςΟɿ4FSWFSMFTT.FFUVQ'VLVPLBɺ$MPVE fl BSF.FFUVQ'VLVPLB
ࠓͷηογϣϯͷత w αʔόʔϨεʹ͍ͭͯΈͳ͞Μͱձ͢Δ͜ͱͰ͢ʂ w લͰ͍ͯ͠Δ͚ͩͰɺΈͳ͞ΜొஃऀͰ͢ʢҙʣ w ͕͍ͯ͠Δ࠷தʹಥͬࠐΈ͍ͨ͜ͱ͕͋Δɺ࣭͕͋ΔͳͲ͋Ε ԕྀͳ͘खΛ͍͋͛ͯͩ͘͞ɻϚΠΫΛ࣋ͬͯߦ͘ͷͰࣗ༝ʹൃݴ͍ͩ͘͞ ͨͿΜԶΔͳʙͬͯํɺલʹདྷ͍͍ͯͨͩͨ΄͏͕ྑ͍͔Ͱ͢ ͨͩ͠ɺ୭͔Λই͚ͭΔΑ͏ͳൃݴɺಛఆͷαʔϏεΛ
ᩫΊΔΑ͏ͳൃݴ͠ͳ͍Ͱ͍ͩ͘͞ɻ
Έͳ͞Μ αʔόʔϨεͯ͠·͔͢ʁ ৮ͬͨ͜ͱ͕͋Ε0,Ͱ͢
αʔόʔϨεͷྺ࢙
αʔόʔϨείϯϐϡʔςΟϯάͷఆٛ w αʔόʔϨεͷجຊ֓೦ w αʔόʔઃఆཧΛӅṭ͠ɺ ΫϥυϓϩόΠμʔ͕όοΫΤϯυαʔϏεΛఏڙ w ։ൃऀʹ༩͑ΔӨڹ w ίʔυهड़ʹूதͰ͖ɺΠϯϑϥετϥΫνϟͷཧෛ୲͕ܰݮ
αʔόʔϨεͷॏཁੑ w αʔόʔϨεͷϏδωεͷӨڹ w ਝͳΞϓϦέʔγϣϯ։ൃͱσϓϩΠϝϯτΛ࣮ݱ w ΠϊϕʔγϣϯͷՃ w ৽͍͠ΞΠσΞΛ͘ࢢʹೖ͠ɺΠϊϕʔγϣϯΛଅਐ
αʔόʔϨεͷޡղ w αʔόʔϨεͷҰൠతͳޡղ w αʔόʔ͕ͳ͍Θ͚Ͱͳ͍ɺΫϥυϓϩόΠμʔ͕ཧΛ୲ w ࣮ࡍαʔόʔϨε w ։ൃऀΠϯϑϥετϥΫνϟͷৄࡉ͔Βղ์͞ΕΔ w
ΠϯϑϥετϥΫνϟͷཧ͔Β֎ΕΔΘ͚Ͱͳ͍
αʔόʔϨεͷྺ࢙ w αʔόʔϨεͷىݯ w தࠒͷΫϥυίϯϐϡʔςΟϯάͷਐԽ w "84-BNCEBͷൃදͱͦͷӨڹ w ͷ"84-BNCEBɺʹ"NB[PO"1*(BUFXBZ w
ΠϕϯτۦಈܕͷΞϓϦέʔγϣϯ։ൃͷଅਐ
αʔόʔϨεͷਐԽ w αʔϏεͱͯ͠ͷؔʢ'BB4ʣ w "84-BNCEB "[VSF'VODUJPOTͳͲ w ΦʔϓϯιʔείϛϡχςΟͷߩݙ w πʔϧϑϨʔϜϫʔΫͷ։ൃ
αʔόʔϨεςΫϊϩδʔͷൃల w େاۀ͔ΒελʔτΞοϓ·Ͱ w ෯͍࠾༻ͱ࣮ફతͳ༻ྫ w αʔόʔϨεͷීٴ w Ϗδωεͱ։ൃͷมֵ
$/$'8(4FSWFSMFTT8IJUF1BQFSW w ϗϫΠτϖʔύʔͷ༰ w ΫϥυωΠςΟϒٕज़ʹ͓͚ΔαʔόʔϨεͷׂͱల w ۀքશମͷτϨϯυͱϕετϓϥΫςΟεͷ֓ཁ w ओͳτϐοΫ w
αʔόʔϨεͷఆٛͱείʔϓ w αʔόʔϨεͷओཁͳརͱ༻γφϦΦ
αʔόʔϨεͬΆ͞ͷݴޠԽ w Ί͓͖5FDI3FQPSU w ͜͜ͷҰ෦Ͱຬ͍ͨͯͨ͠ΒʮαʔόʔϨεͬΆ͍ʯΜ͡Όͳ͍ͷ͔ʁ w ϓϩϏδϣϯෆཁɺཧෆཁ w ࠷ྉۚͷͳ͍͚ͬͨͩͷࢧ w
ͭͷ"1*ݺͼग़͠Ͱར༻Մೳ w ܭըఀࢭ͕ͳ͍ w Πϯελϯε͕ແ͍ IUUQTCPPUIQNKBJUFNT
Έͳ͞Μ αʔόʔϨεͯ͠·͔͢ʁ ৮ͬͨ͜ͱ͕͋Ε0,Ͱ͢
αʔόʔϨεςΫϊϩδʔͷ ֩৺ίϯϙʔωϯτ
ϑΝϯΫγϣϯɾΞζɾΞɾαʔϏεʢ'BB4ʣ w 'BB4ͷ֓೦ w Ϋϥυ্Ͱಠཱͨؔ͠Λ࣮ߦ w ओཁͳϓϥοτϑΥʔϜ w ྫ"84-BNCEB "[VSF'VODUJPOT
όοΫΤϯυɾΞζɾΞɾαʔϏεʢ#BB4ʣ w #BB4ͷఆٛ w ΫϥυαʔϏεͱͯ͠ͷόοΫΤϯυػೳఏڙ w αʔϏεྫ w σʔλϕʔεɺೝূɺετϨʔδ
Ұ෦ͷྫ
"84-BNCEB w ֓ཁ w "84ఏڙͷ'BB4αʔϏε w ΠϕϯτۦಈܕɺεέʔϥϒϧͳΞʔΩςΫνϟ w ओͳ༻్ w
ϦΞϧλΠϜϑΝΠϧॲཧɺόοΫΤϯυ"1*ɺσʔλॲཧ w ಛ w ڧྗͳ౷߹Φϓγϣϯɺߴ͍Մ༻ੑ
"[VSF'VODUJPOT w ֓ཁ w .JDSPTPGUͷ'BB4ιϦϡʔγϣϯ w ๛ͳݴޠαϙʔτɺ౷߹͞Εͨ։ൃڥ w ओͳ༻్ w
ΣϒΞϓϦέʔγϣϯɺϞόΠϧόοΫΤϯυɺϦΞϧλΠϜσʔλॲཧ w ಛ w γʔϜϨεͳ.JDSPTPGUΤίγεςϜͱͷ౷߹
(PPHMF$MPVE'VODUJPOT w ֓ཁ w (PPHMF$MPVEͷ'BB4ιϦϡʔγϣϯ w γϯϓϧͰεέʔϥϒϧͳΠϕϯτϋϯυϦϯά w ओͳ༻్ w
)551τϦΨʔɺόοΫΤϯυΠϕϯτॲཧɺσʔλม w ಛ w γϯϓϧͳεέʔϦϯάɺ(PPHMF$MPVEαʔϏεͱͷڧྗͳ౷߹
$MPVEGMBSF8PSLFST w ֓ཁ w ΤοδίϯϐϡʔςΟϯάʹ͓͚ΔαʔόʔϨεؔ w 1BHFTͱ͍͏੩తϖʔδͱͷ࿈ܞՄೳɺੈքதͷσʔληϯλʔʹΘͨΔ৴ w ओͳ༻్ w
ΣϒϦΫΤετͷϧʔςΟϯάɺαΠτͷΧελϚΠζɺ"1*ΤϯυϙΠϯτ w ಛ w ແྉఏڙɺߴͳΤοδωοτϫʔΫɺ؆୯ͳεέʔϦϯά
'MZJP w ֓ཁ w ϚΠΫϩ7.Λ༻ͨ͠1BB4 w )FSPLVͷସͱͯ͠͞ΕΔαʔϏε w ओͳ༻్ w
%PDLFSΠϝʔδΛར༻ͨ͠ΞϓϦέʔγϣϯͷσϓϩΠ w ಛ w "84ͷ'JSFDSBDLFSΛϕʔεʹͨ͠ϚΠΫϩ7.ɺແྉ͋Γ
'JSFCBTF w ֓ཁ w ϞόΠϧͱΣϒΞϓϦ։ൃ͚ͷόοΫΤϯυϓϥοτϑΥʔϜ w ೝূɺσʔλϕʔεɺΞφϦςΟΫεͳͲͷαʔϏε w ओͳ༻్ w
ϦΞϧλΠϜσʔλϕʔεɺϢʔβʔཧɺΞϓϦੳ w ಛ w ൣғͷແྉɺ(PPHMFͷΠϯϑϥΛ׆༻ɺଟػೳੑ
4VQBCBTF w ֓ཁ w Φʔϓϯιʔεͷ'JSFCBTFସ w ϦΞϧλΠϜσʔλϕʔεɺೝূɺετϨʔδ w ओͳ༻్ w
ϦΞϧλΠϜΞϓϦέʔγϣϯɺਝͳϓϩτλΠϐϯά w ಛ w 1PTUHSF42-ͷڧྗͳαϙʔτɺϦΞϧλΠϜσʔλಉظ
5J%#4FSWFSMFTT w ֓ཁ w ࢄ42-σʔλϕʔεͷαʔόʔϨε൛ w εέʔϥϒϧͰΫϥυωΠςΟϒͳΞϓϩʔν w ओͳ༻్ w
ߴՄ༻ੑͱϦΞϧλΠϜͷσʔλੳ͕ඞཁͳΞϓϦέʔγϣϯ w τϥϯβΫγϣϯॲཧɺେنσʔλΣΞϋε w ಛ w ਫฏεέʔϦϯάͱࣗಈෛՙࢄ w .Z42-ͱͷߴ͍ޓੑɺΫϥυϓϩόΠμʔؒͷ༰қͳҠߦ
.PNFOU w ֓ཁ w αʔόʔϨεΞϓϦέʔγϣϯͷΩϟογϡͱϝοηʔδϯάαʔϏε w ύϑΥʔϚϯεͷߴԽͱεέʔϥϏϦςΟ w ओͳ༻్ w
ϋΠύϑΥʔϚϯεͳΩϟογϡɺϦΞϧλΠϜσʔλॲཧ w ಛ w ߴͳΩϟογϡॲཧɺॊೈͳϝοηʔδϯάͱτϐοΫཧ
/FUMJGZ w ֓ཁ w ੩తαΠτϗεςΟϯάͱαʔόʔϨεόοΫΤϯυػೳ w +".TUBDLΞʔΩςΫνϟ͚ͷϓϥοτϑΥʔϜ w ओͳ༻్ w
੩తαΠτͷσϓϩΠɺαʔόʔϨεؔͷϗεςΟϯά w ಛ w ແྉఏڙɺ$*$%౷߹ɺߴͳ$%/
7FSDFM w ֓ཁ w ϑϩϯτΤϯυϑΥʔΧεͷσϓϩΠϝϯτϓϥοτϑΥʔϜ w 3FBDU /FYUKTͳͲͷαϙʔτ w ओͳ༻్
w ϞμϯϑϩϯτΤϯυͷσϓϩΠͱ࠷దԽ w ಛ w ແྉϓϥϯར༻ՄೳɺߴͳύϑΥʔϚϯεɺ؆୯ͳηοτΞοϓ
͜͜Ͱฉ͍ͯΈ͍ͨʂ ͋ͳͨͷਪ͠ͷαʔϏεʂ 'BB4ɺ#BB4ʹ߆Βͣ αʔόϨεͬΆ͕͋͞Ε0,
ΠϕϯτۦಈΞʔΩςΫνϟ w γεςϜͷಈ࡞ݪཧ w ΠϕϯτʹԠͯ͠ػೳ w Πϕϯτιʔε w )551ϦΫΤετɺσʔλϕʔεมߋɺδϣϒΩϡʔɺDSPO
"1*ήʔτΣΠͱΤϯυϙΠϯτཧ w "1*ήʔτΣΠͷׂ w ϦΫΤετͷϧʔςΟϯάͱηΩϡϦςΟཧ w ΤϯυϙΠϯτͷॏཁੑ w τϥϑΟοΫͷ੍ޚͱཧ
αʔόʔϨεͱίϯςφٕज़ w ૬ޓ࡞༻ w αʔόʔϨεڥͷίϯςφ༻ w εέʔϥϏϦςΟͱॊೈੑ w ίϯςφΦʔέετϨʔγϣϯͷ౷߹
͜͜Ͱฉ͍ͯΈ͍ͨʂ ͋ͳͨͷαʔόʔϨεߏ
αʔόʔϨεͷརͱ՝
αʔόʔϨεͷརͱ՝ w αʔόʔϨεͷओͳར w ίετݮ w ։ൃͱల։ͷਝԽ w ߴ͍εέʔϥϏϦςΟ
ίετݮ w ैྔ՝ۚϞσϧʹΑΔίετޮ w ະ༻Ϧιʔεʹର͢Δίετൃੜͷݮ
։ൃͱల։ͷਝԽ w ΠϯϑϥετϥΫνϟͷཧෛ୲ܰݮ w ։ൃऀ͕ϏδωεϩδοΫʹूதՄೳ w ݁ՌϏδωεΞδϦςΟΛ্͛Δ͜ͱ͕Մೳ
εέʔϥϏϦςΟ w τϥϑΟοΫͷมಈʹର͢ΔࣗಈεέʔϦϯά w ϚΠΫϩαʔϏεΞʔΩςΫνϟͱͷੑ w Ϗδωεʹ͏༰қͳεέʔϧΞοϓ
αʔόʔϨεͷ՝ w ίʔϧυελʔτ w ηΩϡϦςΟͱίϯϓϥΠΞϯε w Ϧιʔε੍ݶͱӡ༻ͷෳࡶ͞ w ϕϯμʔϩοΫΠϯͷϦεΫ
ίʔϧυελʔτ w ॳճϦΫΤετ࣌ͷԆ w ύϑΥʔϚϯεͷӨڹ
ηΩϡϦςΟͱίϯϓϥΠΞϯε w ϚϧνςφϯτڥͷηΩϡϦςΟϦεΫ w σʔλϓϥΠόγʔͱ๏ن੍ͷରԠ
Ϧιʔε੍ݶͱӡ༻ͷෳࡶ͞ w ϝϞϦ࣮ߦ࣌ؒͷ੍ݶ w ࢄγεςϜͷσόοάͱτϥϒϧγϡʔςΟϯάͷ͠͞
ϕϯμʔϩοΫΠϯ w ΫϥυϓϩόΠμʔͷґଘ w Ҡ২ੑͱޓੑͷ
͜͜Ͱฉ͍ͯΈ͍ͨʂ ͋ͳͨͷαʔόʔϨεͷ ͖ͳͱ͜Ζ ۤखͳͱ͜Ζ
αʔόʔϨεͷ࣮ફత༻ྫ
αʔόʔϨεͷ࣮ફత༻ྫ w αʔόʔϨεͷԠ༻ൣғ w ελʔτΞοϓ͔Βେاۀ·Ͱ w ༷ʑͳۀքͱΞϓϦέʔγϣϯʢ*P5ɺػցֶशɺ"*ʣ
ελʔτΞοϓاۀʹ͓͚ΔαʔόʔϨεͷར༻ w ίετͱӡ༻ͷޮԽ w ։ൃͱࢢೖͷਝԽ
େناۀͰͷαʔόʔϨεͷԠ༻ w σʔλॲཧͱࣗಈԽλεΫ w Ϗδωεϓϩηεͷ࠷దԽ
*P5ΞϓϦέʔγϣϯͰͷαʔόʔϨε w େྔͷσʔλॲཧ w ϦΞϧλΠϜੳͷ࣮ݱ
"*ͱػցֶशͷ౷߹ w ػցֶशϞσϧͷτϨʔχϯάͱσϓϩΠ w ෳࡶͳσʔλੳͱ༧ଌϞσϦϯά
͜͜Ͱฉ͍ͯΈ͍ͨʂ ͋ͳͨͷαʔόʔϨεࣄྫʂ খ͞ͳࣄྫ0, ඞཁͳΒ4/4ېࢭ