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
34
「サーバーレス」ってなんだろう みんなでワイガヤ談義 / 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
サーバーレスらしさを意識した AWSにおける開発手法 / Development methodologies in AWS that are serverless-like
seike460
PRO
1
54
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
180
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
120
フルサーバーレスアーキテクチャの運用を重ねた先に見える価値 / 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
86
とにかくHTTP3をライトニングに話す / Anyway, I'll talk to Lightning about HTTP3.
seike460
PRO
0
130
PHP Serverless Pattern
seike460
PRO
0
13
こまけぇこたぁいいんだよ!! PHPWebアプリケーションを早くする、それだけだ / It doesn't matter how small it is! Make PHPWeb applications faster, that's all!
seike460
PRO
0
8
Other Decks in Programming
See All in Programming
GitLab CI/CD で C#/WPFアプリケーションのテストとインストーラーのビルド・デプロイを自動化する
hacarus
0
310
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
1.8k
大規模Reactアプリのリアーキテクチャ~8万行のTanStack Query移行の軌跡~
kj455
4
1k
VS Code をプロダクトにどう取り込むか
onomax
1
730
TCAとKMPを用いた新規動画配信アプリ 「ABEMA Live」の設計
tomu28
2
130
Git Rebase
bkuhlmann
11
1.6k
Let's learn code review
riofujimon
2
580
Fragment Composition of GraphQL
quramy
13
1.5k
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
510
Sheets API使ってみた
toshi0383
2
160
業務ツールとして使うPostman
msys75
0
100
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
390
Featured
See All Featured
Building Applications with DynamoDB
mza
88
5.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
34
8.9k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
65
14k
Building Your Own Lightsaber
phodgson
100
5.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
7
3.4k
Designing for humans not robots
tammielis
247
25k
Scaling GitHub
holman
457
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
358
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
20
1.8k
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ېࢭ