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
AMIMOTO X サーバレス
Search
堀家隆宏
March 12, 2016
Programming
5
3.3k
AMIMOTO X サーバレス
jawsdays2016で発表した資料
堀家隆宏
March 12, 2016
Tweet
Share
More Decks by 堀家隆宏
See All by 堀家隆宏
オープンソースコミュニティで加速するサーバーレスの未来/serverless will be
horike37
4
730
auth0-meetup.pdf
horike37
1
270
What’s happening with Serverless Framework, and it lives with AWS SAM.
horike37
0
110
What is Serverless. Why is Serverless.
horike37
1
88
aws-with-functional-saas
horike37
2
180
serverless-with-oss
horike37
0
130
slsconftokyo
horike37
0
5.6k
slsconfworkshop
horike37
3
2.8k
Test Driven Development For Lambda
horike37
2
360
Other Decks in Programming
See All in Programming
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
140
ソフトウェア設計の実践的な考え方
masuda220
PRO
3
370
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
730
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
320
CSC305 Lecture 02
javiergs
PRO
1
260
非同期jobをtransaction内で 呼ぶなよ!絶対に呼ぶなよ!
alstrocrack
0
460
dynamic!
moro
9
5.7k
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
140
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
450
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osk2025-duckdb
takahashiikki
1
230
開発生産性を上げるための生成AI活用術
starfish719
1
140
Swift Concurrency - 状態監視の罠
objectiveaudio
2
440
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
Building an army of robots
kneath
306
46k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Navigating Team Friction
lara
189
15k
Facilitating Awesome Meetings
lara
56
6.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Making Projects Easy
brettharned
118
6.4k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Why Our Code Smells
bkeepers
PRO
339
57k
The Cult of Friendly URLs
andyhume
79
6.6k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Transcript
".*.050YαʔόϨε גࣜձࣾσδλϧΩϡʔϒ ງՈོ ".*.050ΫϥυωΠςΟϒͳເΛݟΔͷ͔
ࣗݾհ
ॴଐ%JHJUBM$VCF$P-UE ଐੑΞϓϦέʔγϣϯΤϯδχΞ ࣄ8PSE1SFTT&OUFSQSJTF4VQQPSU
".*.050ͱ
None
ಛ
".*.050$%1
0OFDMJDLMBVODIPO"84.BSLFUQMBDF $MPVE'PSNBUJPO
ຊ
ΫϥυωΠςΟϒͱ
ΫϥυωΠςΟϒ ɾΫϥυͰఏڙ͞ΕαʔϏεར༻Λલఏʹߏங͢Δ ɹαʔϏεٴͼΞϓϦέʔγϣϯ ɾग़དྷΔ͚ͩԾϚγϯΛΘͣʹΫϥυͰఏڙ͞Εͨ ɹαʔϏεΛޮతʹར༻
αʔόϨεΞʔΩςΫνϟ
αʔόϨεΞʔΩςΫνϟͱ ΫϥυωΠςΟϒ͔ͭ/PO&$
ͳͥ/PO&$ʁ ɾΠϯϑϥϨΠϠʔͷϝϯςφϯε"84ͷαʔϏεଆʹͤΔ͜ͱͰ ɹΞϓϦέʔγϣϯίʔυʹूத ɾࣗ༝Լ͕Δ͕ͦͷ֤αʔϏεͷಛੑΛ׆͔ͯ͠ ɹΞϓϦέʔγϣϯΛ࡞Δ
"1*(BUFXBZ
"1*(BUFXBZ ɾ"1*Λ࡞ͯ͠ެ։͢Δ͜ͱ͕Ͱ͖ΔαʔϏε ɾΠϯϑϥͷϝϯςφϯεෆཁ ɾ$MPVE'SPOUΛར༻ͨ͠ϨΠςϯγݮɺ%%PTରࡦ ɾ"1*ΩʔΛ࡞ͯ͠
-BNCEB
-BNCEB ɾΞϓϦέʔγϣϯίʔυΛ࣮ߦͰ͖ΔίϯϐϡʔταʔϏε ɾΠϯϑϥͷϝϯςφϯεෆཁ ɾ֤छ"84αʔϏεͱ࿈ܞ ɾίʔυ࣮ߦ࣌ؒʹରͯ͠ͷ՝ۚɻίετޮ͕ඇৗʹߴ͍
%ZOBNP%#
%ZOBNP%# ɾϑϧϚωʔδυͳ/P42-σʔλϕʔεαʔϏε ɾ410'͕ଘࡏ͠ͳ͍ɻߴՄ༻ੑYϨϓϦέʔγϣϯ ɾετϨʔδ༰ྔ੍ݶͳ͠ ɾਫฏεέʔϦϯάʹΑΔෛՙࢄ
IUUQTEBXTTUBUJDDPNXIJUFQBQFST"84@
[email protected]
5JFS@"SDIJUFDUVSFTQEG
IUUQTEBXTTUBUJDDPNXIJUFQBQFST"84@
[email protected]
5JFS@"SDIJUFDUVSFTQEG
8PSE1SFTTͰαʔόϨεΞʔΩςΫνϟͱʁ
ैདྷͷ".*.050ߏ
-BNCEBͰ".*.050ʁ
ͦ͏͍͏͜ͱͰͳ͍ɾɾ
".*.050ͰͲͷΑ͏ʹ αʔόϨεΞʔΩςΫνϟΛར༻͍ͯ͠Δͷ͔
௨ৗͷ8PSE1SFTTͷػೳ։ൃ 8PSE1SFTT$PSF 1MVHJO 1MVHJO 1MVHJO 1MVHJO
1MVHJO
ൃੜ͢Δ ɾιʔείʔυͷංେԽ ɾ%#ͷංେԽ ɾ%#͕୯ҰোʹͳΓ ɹ"VUP4DBMJOH͕ແҙຯʹ 8PSE1SFTT$PSF 1MVHJO 1MVHJO 1MVHJO 1MVHJO
1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO
.JDSPTFSWJDFT
.JDSPTFSWJDFT ɾγεςϜΛෳͷίϯϙʔωϯτͰߏங ɾίϯϙʔωϯτͦΕͧΕಠཱͨ͠γεςϜͱͯ͠ಈ͘ ɾ3FTUGVMͳ"1*ͰγεςϜ͕ΓͱΓ ɾૄ݁߹
8PSE1SFTT$PSF $POOFDUPS1MVHJO .JDSPTFSWJDF .JDSPTFSWJDF .JDSPTFSWJDF "1* "1* "1*
".*.050Y&MBTUJDTFBSDI4FSWJDF
8PSE1SFTTͷऑ ݕࡧ
8PSE1SFTTͷऑ ɾݕࡧλΠτϧͱຊจͷ-*,&ݕࡧ ɾΧελϜϑΟʔϧυΛݕࡧʹՃ͑Δͱٸܹʹ͘ͳΔέʔε ɾશจݕࡧͷΑ͏ͳػೳͳ͍ ɾίϯςϯπ͕ສ୯Ґʹͳͬͯ͘Δͱ%#ͷෛՙ͕૿େ
&MBTUJDTFBSDI4FSWJDF ɾ&MBTUJDTFBSDIΫϥελΛͰىಈ ɾ,JCBOBʹΑΔϏδϡΞϥΠζ ɾ4OBQTIPUʹΑΔόοΫΞοϓ
&MBTUJDTFBSDI 4FSWJDF ͲͷΑ͏ʹղܾ͢Δͷ͔
None
&MBTUJDPNNFSDF4FSWJDFT ɾ".*.050Y8PP$PNNFSDFͷ֦ுαʔϏε ɾ&MBTUJDTFBSDIͷશจݕࡧʹΑΓݕࡧͱؔ࿈ͷػೳΛڧԽ ɾߪങσʔλͱݕࡧɺؔ࿈ͷؔ࿈ΛՄࢹԽͯ͠ɺ1%$"ࢧԉ
ΞʔΩςΫνϟ 8PSE1SFTT$PSF $POOFDUPS1MVHJO શจݕࡧ ߪങσʔλऩू ߪങσʔλՄࢹԽ "1* "1* "1*
ΞʔΩςΫνϟ
ΞʔΩςΫνϟ શจݕࡧ ߪങσʔλՄࢹԽ ߪങσʔλऩू
શจݕࡧ"1*ͷ࿈ܞ࣮ 8PSE1SFTTͷϑοΫΛ͍ݕࡧ࣌ʹ &MBTUJDTFBSDIͷΤϯυϙΠϯτݕࡧΛϑΥϫʔυ
ߪങσʔλొ"1*ͷ࣮ จྃը໘Ͱɺݕࡧ݁Ռ ͱച্ใΛ͢
ߪങσʔλొ"1*ͷ࣮ จྃը໘ͰߪങσʔλΛ"1*
ՄࢹԽ෦ͷ࣮ -BNCEBͰ%ZOBNP%# ʹσʔλૹ৴
ՄࢹԽ෦ͷ࣮ -BNCEBϑΝϯΫγϣϯͰ%ZOBNP%#ʹσʔλ
ՄࢹԽ෦ͷ࣮ %ZOBNP%#ʹొ͞Εͨσʔλ
σʔλՄࢹԽ"1*ͷ࣮ ੵͨ͠σʔλΛ +40/Ͱฦ͢
σʔλՄࢹԽ"1*ͷ࣮ 8PSE1SFTTฦ٫͢Δ+40/
σʔλՄࢹԽ"1*ͷ࣮ 8PSE1SFTTଆͰ"1*(BUFXBZܦ༝Ͱ+40/Λऔಘ άϥϑԽॲཧΛߦ͏
σʔλՄࢹԽ"1*ͷ࣮
".*.050Y"NB[PO.BDIJOF-FBSOJOH
"NB[PO.BDIJOF-FBSOJOH ɾػցֶश͕ΕΔ ɾσʔλΛݩʹͨ͠ੳͱϨϙʔτ ɾϞσϧΛݩʹ༧ଌ݁Ռ"1*Λఏڙ
ղܾ͍ͨ͠՝ ɾߪങσʔλΛݩʹಛఆͷΛʮങ͍ͦ͏͔ʯ ʮങΘͳͦ͞͏͔ʯΛϢʔβ͝ͱʹ༧ଌ͢Δ ɾ݁Ռʹج͍ͮͯϚʔέςΟϯάͷํ๏Λม͑Δ
σʔλੳ ·ͣߪങσʔλͷੳ ༧ଌ͍ͨ݁͠Ռʹରͯ͠૬ؔͷ ͋Γͦ͏ͳσʔλΛϐοΫΞο
༧ଌثʢϞσϧʣΛ࡞Δ
1SFEJDU"1* ͜ͷ"1*Λ༻ͯ͠༧ଌث͔ Β༧ଌ݁ՌΛϦΞϧλΠϜͰ औಘͰ͖Δ
ΞʔΩςΫνϟ "1* 8PSE1SFTT$PSF $POOFDUPS1MVHJO ߪങ༧ଌϞσϧ "1*
ΞʔΩςΫνϟ ձһͷଐੑσʔλΛϦΫΤετ͢Δ ͜ͱͰͦͷϢʔβͷߪങ༧ଌΛฦ͢
ϯΫ 1SFEJDU"1*ʹσʔλΛೖग़ྗ͢Δ
༧ଌ݁Ռ QSFEJDUFE-BCFM͕Ͱ͋Εߪೖͦ͠͏ͳϢʔβ Ͱ͋Εߪೖͯ͘͠Εͳͦ͞͏ͳϢʔβ
8PSE1SFTT$POOFDUPS1MVHJO
8PSE1SFTTͷϢʔβҰཡ
".*.050Y.PCJMF)VC
".*.050ϚωʔδυϗεςΟϯάͷ ඦ&$ΠϯελϯεΛҰݩཧ͍ͨ͠ ղܾ͍ͨ͠՝
ϞόΠϧΞϓϦʹΑΔαʔόͷҰݩཧ ɾ(6*ʹΑΔૢ࡞͕Մೳ ɾΠϯϑϥΤϯδχΞͰͳͯ͘؆қͳૢ࡞ͳΒՄೳ ɾ1VTI௨ʹΑΔΞϥʔτݕ
None
"84.PCJMF)VC ɾ"84ΛͬͨϞόΠϧΞϓϦ։ൃΛ؆୯ʹ ɾελʔλʔίʔυͷࣗಈੜ ɾඞཁͳ*".ݖݶͷࣗಈઃఆ
࣮͕ඞཁͳ෦ ɾ-BNCEBϑΝϯΫγϣϯ ɾΞϓϦͷ6*ٴͼ ɹ-BNCEBϑΝϯΫγϣϯͷݺͼग़͠
ΞʔΩςΫνϟ
ػೳ ɾΠϯελϯεͷεέʔϧΞοϓμϯ ɾΠϯελϯεͷىಈɾఀࢭ ɾ$16ϞχλϦϯά ɾ$16ΞϥʔτͷQVTI௨
ΞʔΩςΫνϟ ΠϯελϯεΛૢ࡞͢Δ ֤छ-BNCEBϑΝϯΫγϣϯ ೝূٴͼೝՄ ֤Πϯελϯεͷ ΞϥʔτΛQVTI௨
ΠϯελϯεҰཡ
Πϯελϯεৄࡉ
$16Ξϥʔτ௨
ͬͱޮతʹӡ༻͢ΔͨΊʹ
None
4FSWFSMFTT'SBNFXPSLͱ ɾ"84ઐ༻ͷΞϓϦέʔγϣϯϑϨʔϜϫʔΫ ɾ-BNCEBɺ"1*(BUFXBZɺ%ZOBNP%#ɺ4Λαϙʔτ
ղܾ͢Δ՝ ɾαʔόϨεΞϓϦέʔγϣϯͷ ɹ։ൃɺςετɺσϓϩΠΛαϙʔτ ɾ-BNCEBͷϩʔΧϧͰͷ࣮ߦ ɾϒϧʔάϦʔϯσϓϩΠϝϯτ ɾ$MPVE'PSNBUJPOΈ͍ͨͳͷ
ϩʔΧϧ1$Ͱͷ-BNCEBϑΝϯΫγϣϯͷ࣮ߦ
"84ͷσϓϩΠ
(JU)VCͰαʔόϨεΞϓϦέʔγϣϯͷެ։ IUUQTHJUIVCDPNNFHVNJUFBNBNJNPUPNPCJMFBQQMBNCEB
(JU)VCͰαʔόϨεΞϓϦέʔγϣϯͷެ։ ࣗ࡞ͷ"84ΞϓϦέʔγϣϯ͕ੈքதʹͰ͖Δ
·ͱΊ
αʔόϨεΞʔΩςΫνϟ͕ղܾ͢Δͷͷຊ࣭
՝Λղܾ͢ΔͨΊͷίʔυΛ͔͚ྑ͍
ேࢥ͍͍ͭͨ͜ͱ͕༦ํʹ۩ݱԽ͍ͯ͠Δ
4NBMM4UBSU'BTU3FMFBTF
·ͣখ͞ͳίϯϙʔωϯτ͔Β࢝ΊͯΈΑ͏
"MMZPVOFFEJTDPEF
IUUQRJJUBDPNIPSJLF