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.2k
AMIMOTO X サーバレス
jawsdays2016で発表した資料
堀家隆宏
March 12, 2016
Tweet
Share
More Decks by 堀家隆宏
See All by 堀家隆宏
オープンソースコミュニティで加速するサーバーレスの未来/serverless will be
horike37
4
720
auth0-meetup.pdf
horike37
1
260
What’s happening with Serverless Framework, and it lives with AWS SAM.
horike37
0
100
What is Serverless. Why is Serverless.
horike37
1
78
aws-with-functional-saas
horike37
2
180
serverless-with-oss
horike37
0
130
slsconftokyo
horike37
0
5.5k
slsconfworkshop
horike37
3
2.7k
Test Driven Development For Lambda
horike37
2
340
Other Decks in Programming
See All in Programming
Java on Azure で LangGraph!
kohei3110
0
170
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
160
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
C++20 射影変換
faithandbrave
0
540
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
230
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
510
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
570
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
100
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
630
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
310
XSLTで作るBrainfuck処理系
makki_d
0
210
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
580
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.1k
Code Reviewing Like a Champion
maltzj
524
40k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
490
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Site-Speed That Sticks
csswizardry
10
660
The Cult of Friendly URLs
andyhume
79
6.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Faster Mobile Websites
deanohume
307
31k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Why Our Code Smells
bkeepers
PRO
337
57k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
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