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
はじめてのSPAを サーバーレスで作る with AngularJS + S3 + Lambd...
Search
Yonashiro Yuu
August 20, 2016
Technology
1
3.9k
はじめてのSPAを サーバーレスで作る with AngularJS + S3 + Lambda + API Gateway + Route 53
JAWS-UG沖縄 真夏の熱すぎるサーバレス祭り! 2016年08月 の発表資料です。
Yonashiro Yuu
August 20, 2016
Tweet
Share
More Decks by Yonashiro Yuu
See All by Yonashiro Yuu
明日からの話し合いとかで使えるかもしれない イベントや打ち合わせとかの 多人数でのコミュニケーションをスムーズにする心掛け
cloneko
0
560
ボクがハカチャンのボラスタるワケ(ハッカーズチャンプルー2018前夜祭LT)
cloneko
0
550
沖縄からAWS認定試験への道? LT - JAWS-UG on AWS Cloud Roadshow 2017 Osaka
cloneko
0
1.4k
ハッカーズチャンプルーでの LTのやり方、 そしてLTをすることによるその効果
cloneko
0
170
効果的な導運用のための Amazon Web Services 活用入門 を読んだ感想 - JAWS-UG 沖縄 2017/01 LT -
cloneko
0
170
F + IT から生まれる 距離と時間を越えた コラボレーション
cloneko
0
6.6k
DigiLab Okinawa 2015 LT Session -○○のトイレめ! → いろいろな「表現のしかた」を身に付けよう!-
cloneko
1
140
2015-03-18-katayabira-sampling-yonayuu
cloneko
0
110
ネットワーク対戦型タイピングを作って、プログラム(とか)について考えてみた
cloneko
0
4k
Other Decks in Technology
See All in Technology
来年もre:Invent2024 に行きたいあなたへ - “集中”と“つながり”で楽しむ -
ny7760
0
460
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
1
160
一休.comレストランにおけるRustの活用
kymmt90
3
580
最速最小からはじめるデータプロダクト / Data Product MVP
amaotone
5
730
IaC運用を楽にするためにCDK Pipelinesを導入したけど、思い通りにいかなかった話
smt7174
1
110
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
730
Java x Spring Boot Warm up
kazu_kichi_67
2
490
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
AIを駆使したゲーム開発戦略: 新設AI組織の取り組み / sge-ai-strategy
cyberagentdevelopers
PRO
1
130
新R25、乃木坂46 Mobileなどのファンビジネスを支えるマルチテナンシーなプラットフォームの全体像 / cam-multi-cloud
cyberagentdevelopers
PRO
1
130
GitHub Universe: Evaluating RAG apps in GitHub Actions
pamelafox
0
170
ガチ勢によるPipeCD運用大全〜滑らかなCI/CDを添えて〜 / ai-pipecd-encyclopedia
cyberagentdevelopers
PRO
3
200
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
65
4.4k
Speed Design
sergeychernyshev
24
570
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
290
Gamification - CAS2011
davidbonilla
80
5k
KATA
mclloyd
29
13k
Facilitating Awesome Meetings
lara
49
6k
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Building an army of robots
kneath
302
42k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Designing for humans not robots
tammielis
249
25k
Transcript
͡Ίͯͷ41"Λ αʔόʔϨεͰ࡞Δ :POBTIJSP:VVBLB!DMPOFLP BU+"846(0LJOBXB
ࣗݾհ w ᢛಹ༤BLB!DMPOFLP w Πϯϑϥ͞Μ͘Β͍ͱ ઐֶߍͷߨࢣ͘Β͍ ͬͯ·ͨ͠ɻ ։ൃܦݧͳ͠ w
͖ͳ"84ͷαʔϏε 4ͱ3PVUFɻ
ࠓͷྲྀΕ w 8FCΞϓϦΛ࡞Δ࣌ͷߏ#FGPSF"GUFS w 41"ΛαʔόʔϨεͰ࡞ͬͯΈͨ w "84ΛͬͯϋϚͬͨͱ͜ w ࡞ͬͯΈͯࢥͬͨ͜ͱ
8FCΞϓϦΛ࡞Δ࣌ͷߏ #FGPSF"GUFS
8FCΞϓϦ࡞Δ࣌ʹඞཁͳḉ ඦઓ࿉ຏͳօ༷ʹ؆୯͗͢Δ͓ͩͱࢥ͍·͕͢ʜ w ϦΫΤετ͞ΕͨϑΝΠϧΛఏڙ͢Δαʔόʔ w ϦΫΤετʹԠͯ͡ϓϩάϥϜΛ࣮ߦ͢Δ@@@@αʔόʔ w ໊લղܾͷͨΊͷαʔόʔ
8FCΞϓϦ࡞Δ࣌ʹඞཁͳḉ ඦઓ࿉ຏͳօ༷ʹ؆୯͗͢Δ͓ͩͱࢥ͍·͕͢ʜ w ϦΫΤετ͞ΕͨϑΝΠϧΛఏڙ͢Δ8FCαʔόʔ w ϦΫΤετʹԠͯ͡ϓϩάϥϜΛ࣮ߦ͢Δ"1αʔόʔ w ໊લղܾͷͨΊͷ%/4αʔόʔ
8FCΞϓϦͷΞΫηεͷྲྀΕ ྫ5XJUUFSʹΞΫηεͯ͠ΈΔ %/4αʔόʔ UXJUUFSDPNͷ*1ΞυϨεڭ͑ͯΑ ͔ ͩΑ 8FCαʔόʔ UXJUUFSDPNͷίϯςϯπ͍ͩ͘͞ ͍Αͬ
8FCΞϓϦͷΞΫηεͷྲྀΕ ྫ5XJUUFSʹΞΫηεͯ͠ΈΔ 8FCαʔόʔ UXJUUFSDPNͷίϯςϯπ͍ͩ͘͞ ͍Αͬ ͋ͬɺ!DMPOFLP͞Μͩɻ !DMPOFLP͞Μ༻ͷ5-࡞Δ ϓϩάϥϜ࣮ߦͯ͠͞ͳ ͖Ό
Ͱը૾ͱ͔อଘͯ͋͠ Δͷͦͷ··ͪ͠Ό͑ 0,ͩΑͶ ϓϩάϥϜͰ࡞ͬͨσʔλ ੩తϑΝΠϧ
8FCΞϓϦ࡞Δ࣌ʹඞཁͳḉ ඦઓ࿉ຏͳօ༷ʹ؆୯͗͢Δ͓ͩͱࢥ͍·͕͢ʜ w ϦΫΤετ͞ΕͨϑΝΠϧΛఏڙ͢Δ8FCαʔόʔ w ϦΫΤετʹԠͯ͡ϓϩάϥϜΛ࣮ߦ͢Δ"1αʔόʔ w ໊લղܾͷͨΊͷ%/4αʔόʔ
αʔόʔͰಈ͔࣌͢ͷߏ w ϦΫΤετ͞ΕͨϑΝΠϧΛఏڙ͢Δ8FCαʔόʔ w "QBDIF)5514FSWFSOHJOY.JDSPTPGU**4FUDʜ w ϦΫΤετʹԠͯ͡ϓϩάϥϜΛ࣮ߦ͢Δ"1αʔόʔ w $(*͍ͬͯ͏ͷ͕͋ͬͨؾ͕͢ΔʜNPE@YYY ಛʹQIQ
5PNDBUͳͲαʔϒϨοτίϯςφ +BWBͱ͔ ଞ͍Ζ͍Ζ w ໊લղܾͷͨΊͷ%/4αʔόʔ w CJOE6OCPVOE/4%EKCEOTͬͯͷ͕͋ͬͨؾ ͕͢Δʜଞ͍Ζ͍Ζ
ΞϓϦ࡞ͬͯಈ͔͍ͨ͠ʜ ͦΕ͚ͩͳΜͩ w αʔόʔͷηοτΞοϓͱ͔·͊ɺ࡞ͬͨΞϓϦ ಈ্͔͢ͰઈରඞཁͰ͢ΑͶʜ w ͚ͩͲɺαʔόʔͷҡ࣋ɾӡ༻ͷͨΊͷࣝษڧ ͠ͳ͖Ό͍͚ͳ͍ʜͷ w
νʔϜͷதʹઐͷਓ͕͍ΔͳΒ͍͍͚Ͳʜ
αʔόʔϨεͳΒ
αʔόʔϨεʹͳΔͱมΘΔ͜ͱ w αʔόʔͷηοτΞοϓͱ͔·͊ɺ࡞ͬͨΞϓϦಈ্͔͢Ͱ ઈରඞཁͰ͢ΑͶʜ w ηοτΞοϓͱ͔ݮΒͤΔɻ ͕ɺಈ͔͢ڥʹ߹ΘͤͨΞϓϦͷ։ൃΛ͠ͳ͍ͱ͍͚ͳ͘ͳΔ ·͊ͲΜͳΞϓϦͰ ಉ͡Ͱ͕͢
w ͚ͩͲɺαʔόʔͷҡ࣋ɾӡ༻ͷͨΊͷࣝษڧ͠ͳ͖Ό͍ ͚ͳ͍ʜͷ w ಈ͔͢ڥͷಛੑΔඞཁ͋Δ͕ɺ΄ͱΜͲཧ͠ͳͯ͘ྑ͘ͳΔʜͱ͍͍ͳ͊ʜ w νʔϜͷதʹઐͷਓ͕͍ΔͳΒ͍͍͚Ͳʜ w ˢͱಉ͡ײ͡
αʔόʔϨεͷߏ "84റΓ w ϦΫΤετ͞ΕͨϑΝΠϧΛఏڙ͢Δ8FCαʔόʔ w 4 w ϦΫΤετʹԠͯ͡ϓϩάϥϜΛ࣮ߦ͢Δ"1αʔόʔ w -BNCEB
"1*(BUFXBZ w ໊લղܾͷͨΊͷ%/4αʔόʔ w 3PVUF
41"ΛαʔόʔϨεͰ࡞ͬ ͯΈͨ
ͦͦ41"ͬͯ ඦઓ࿉ຏͳօ༷ʹ؆୯͗͢Δ͓ͩͱࢥ͍·͕͢ʜ w 41 8FC "ͷུশͰ͢ɻ
ͦͦ41"ͬͯ ඦઓ࿉ຏͳօ༷ʹ؆୯͗͢Δ͓ͩͱࢥ͍·͕͢ʜ w 4JOHMF1BHF 8FC "QQMJDBUJPOͷུশͰ͢ɻ
Ͱɺ4JOHMFͳΜͱ͔ͬͯԿΑ w ௨ৗͷ8FCΞϓϦը໘ͷભҠͷࡍʹϖʔδશମ ΛαʔόʔʹϦΫΤετ͠·͢ɻ w ͬͯͳΔͱ)5.-Β+4Β$44Βը૾Β શ෦ϩʔυ͠ͳ͓͠͠ͳ͖ΌͳΒͳ͍ɻ w ޮѱ͘ͳ͍
41"͡Όͳ͍ྫ 8JLJQFEJB ίϯςϯπͷ෦Ҏ֎ڞ௨͡ΌͶ ίϯςϯπͷ෦͚ͩσʔλऔಘͯ͠ॻ͖͑ͨΒϦΫ ΤετݮΒͤΔΜ͡ΌͶ ˠϢʔβʔͷମײతʹշ దʹͳΔΜ͡ΌͶ
41"ʹ͢Δͱ w ͚ࠩͩऔ͖ͬͯͨΓɺใΛΞϓϦଆʹૹͬͨ࣌ ʹͯ͢ͷཁૉ )5.-ࣗମɾ+4ը૾$44 ΛΛऔ ಘ͠ͳ͍͍ͯ͘ͷͰɺແବͳϦΫΤετ͕ݮΔ w Ϣʔβʔͷମײ্͕͕Δ w
αʔόʔͷෛՙݮΒͤΔ దʹ࡞ΕͯΕ Ͷʜ
Ͱɺ࡞ͬͯΈ·ͨ͠ w $#5 $PNQVUFS#BTF5FTUJOH ΞϓϦDMPCVUBΛ ։ൃͯ͠Έ·ͨ͠ɻ
DMPCVUBͬͯԿ w $#5 $PNQVUFS#BTF5FTUJOH γϛϡϨʔλʔ w Α͏ٖࢼݧΛίϯϐϡʔλʔͰΔౕ w ͱͱ$6*ͷͷ͕͋ͬͨͷΛ8FCͰͰ͖ΔΑ͏ʹ͠ ͔ͨͬͨɻ
w IUUQCVUBDMPOFLPDPNͰΞΫηεͰ͖·͕͢ɺಈ͖·ͤ Μ ޙड़ w ΫϥΠΞϯτଆͷίʔυ(JUIVCʹ͋Γ·͢ɻ IUUQTHJUIVCDPNDMPOFLPEBZT@OE
αʔόʔϨεଆڥ w ੩తϑΝΠϧͷ৴4 w σʔλͷ৴ ޙड़ "1*(BUFXBZܦ༝-BNCEB Ͱ4ʹ͋Δ+40/σʔλΛऔಘ w %/4αʔόʔ3PVUF
ΫϥΠΞϯταΠυ w ZFPNBOͷ"OHVMBS+4ͷδΣωϨʔλʔͰܗੜ w $P⒎FF4DSJQUͰهड़ w HSVOUͰσϓϩΠ༻σʔλͷੜ4ͷసૹ
ͬͯΔ͜ͱ w Γ͍ͨࢼݧΛબͨ͠Βσʔλ +40/ Λऔ ಘͯ͠ࢼݧͬͯɺ࠾͍ͯ͠Δ͚ͩͰ͢ɻ
ͬͯΔ͜ͱ w Γ͍ͨࢼݧΛબͨ͠Βσʔλ +40/ Λऔ ಘͯ͠ࢼݧͬͯɺ࠾͍ͯ͠Δ͚ͩͰ͢ɻ
"1*(BUFXBZ -BNCEBͰ ͬͯΔ͜ͱ w ࣄલʹύεϫʔυΛͬͯΔਓʹ͔͠σʔλͷ ϦΫΤετΛฦ͞ͳ͍Α͏ʹ"1*(BUFXBZܦ༝ͷ -BNCEBͰύεϫʔυνΣοΫΛߦͳ͏ɻ w ਖ਼͍͠ύεϫʔυ͕ϦΫΤετʹؚ·Ε͍ͯΕ σʔλ͕อଘ͞Ε͍ͯΔ4όέοτ͔Β+40/
ϑΝΠϧΛऔಘͯ͠ฦ٫͢ΔΑ͏ʹ͍ͯ͠Δɻ w ਖ਼ɺˢͷࣄ͕ແ͚Ε4Ͱ݁͠·͢ɻ
ྲྀΕ σʔλͷϦΫΤετ *% ύεϫʔυ *% ύεϫʔυ ύεϫʔυ͕ਖ਼͚͠Ε σʔλ +40/ ΛϦΫΤετ
σʔλ+40/ σʔλ+40/ σʔλ+40/ ͜Ε͕Γ͍͚ͨͩͳͷʹαʔόʔ্ཱͪ͛Δͷഅࣛഅࣛ͠ ͍Ͱ͢ΑͶ
"1*(BUFXBZ -BNCEBͰ Γ͍ͨ͜ͱ w Λσʔλϕʔεʹ֨ೲͯ͠ੳ͍ͨ͠ w Ͳͷ͕Αؒ͘ҧ͍ͬͯΔ͔ͱ͔ੳ͍ͨ͠ʜ w ઈࢍอཹதͰ͢PS[
"84ΛͬͯϋϚͬ ͨͱ͜Ζ
"84"1*(BUFXBZΛ ͬͯϋϚͬͨͱ͜Ζ
͠ΐͬͪΎ͏Εͯө͞ΕͶʔͬͯΩϨͯΔʜ
͍Ζ͍Ζղܾࡦ͋Δʜ w ઌఔͷηογϣϯͰग़ͨ4JNQMF"1*(BUFXBZͱ͔ 4FSWFSMFTT'SBNFXPSL͑Ͱ͖ΔΜʜPS[ w ౡ͞ΜͷηογϣϯIUUQXXXTMJEFTIBSFOFU,PJDIJSP/JTIJKJNB BXTMBNCEBJOHPMBOH w র͞ΜͷηογϣϯIUUQXXXTMJEFTIBSFOFUOBPUPUFSVZB TFSWFSMFTTGSBNFXPSLOPEFKT
͕ฦͤͳ͍ʜ w ౷߹ϨεϙϯεͰύεϫʔυ͕ ؒҧ͍ͬͯΔ࣌ʹ 'PSCJEEFO Λฦͦ͏ͱࢥͬ ͯΛฦ͢Α͏ʹઃఆ͢Δͱ Λฦ͞ͳ͍ ฦ͢
ʜ w Ҏ֎ͩͱͪΌΜͱಈ͍ͨ ͷͰɺෆຊҙ͚ͩͲʹ͠ ͯ·͢ʜ
αʔόʔϨεͬͯΈ ͯࢥͬͨ͜ͱ
αʔόʔͷҡ࣋͠ͳ͍͍ͯ͘ʜ w Πϯϑϥ͞Μతʹࢮ׆ࢹͨ͠Γɺαʔόʔͷε ςʔλεࢹͨ͠Γ͍Ζ͍Ζߟ͕͑ͪʹͳ͚ͬͯͨ Ͳɺ΄΅Կؾʹ͠ͳ͍͍ͯ͘ͷָɻ w ·͊ɺམͪͯͯͦΜͳʹจ۟ݴ͏ਓ͍ΔΑ͏ͳ ΜͰͳ͍͔ΒͶʜ w
%/4αʔόʔࣗͰ࣋ͭΑΓ3PVUFʹ·͔ͤͯ Δ΄͏͕ѹతʹָɻ͏Μɻ
ಛੑ͖ͪΜͱΒΜͱਏ͍ w -BNCEB·ͩૉͳײ͡ɻ w "1*(BUFXBZͳΜ͔͠ΐʔͳ͍ͱ͜Ͱͻ͔͔ͬΔɻ w ͋ͱṖɻཧղͰ͖ͳ͍͜ͱͳ͍͚Ͳɻ w "1*(BUFXBZ͍ͬͯ͏͘Β͍ͳͷͰ"1*Ҏ্ͷ͜ͱΛ͞ ͤΔͷଟແཧͳΜͩΖ͏ͳɻ
w 41"ͱ૬ੑ͍͍͔ɻ
·ͱΊ
·ͱΊ w αʔόʔϨεɺӡ༻ָɻख์͠Ͱͳ͍͚Ͳɻ w 41"ͱαʔόʔϨεͷ૬ੑΑͦ͞͏ɻ͚ͩͲ͏ ڥͷ͜ͱͪΌΜͱ͓ͬͯ͘ඞཁ͋Δɻ