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
700
auth0-meetup.pdf
horike37
1
250
What’s happening with Serverless Framework, and it lives with AWS SAM.
horike37
0
84
What is Serverless. Why is Serverless.
horike37
1
64
aws-with-functional-saas
horike37
2
160
serverless-with-oss
horike37
0
110
slsconftokyo
horike37
0
5.3k
slsconfworkshop
horike37
3
2.6k
Test Driven Development For Lambda
horike37
2
310
Other Decks in Programming
See All in Programming
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
3.7k
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
3
310
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
120
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
270
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
140
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
180
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
390
2025.01.17_Sansan × DMM.swift
riofujimon
2
670
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
2.3k
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
310
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
150
Java Webフレームワークの現状 / java web framework at burikaigi
kishida
9
2k
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Visualization
eitanlees
146
15k
Designing for humans not robots
tammielis
250
25k
Optimising Largest Contentful Paint
csswizardry
33
3k
Building Adaptive Systems
keathley
39
2.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Facilitating Awesome Meetings
lara
51
6.2k
Docker and Python
trallard
43
3.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Git: the NoSQL Database
bkeepers
PRO
427
64k
The World Runs on Bad Software
bkeepers
PRO
67
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