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
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
190
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
480
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
870
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
480
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
130
隣接領域をBeyondするFinatextのエンジニア組織設計 / beyond-engineering-areas
stajima
1
280
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
13k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Fireside Chat
paigeccino
34
3k
How STYLIGHT went responsive
nonsquared
95
5.2k
The Cost Of JavaScript in 2023
addyosmani
45
6.8k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Writing Fast Ruby
sferik
627
61k
What's in a price? How to price your products and services
michaelherold
243
12k
Statistics for Hackers
jakevdp
796
220k
Ruby is Unlike a Banana
tanoku
97
11k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
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"ͱαʔόʔϨεͷ૬ੑΑͦ͞͏ɻ͚ͩͲ͏ ڥͷ͜ͱͪΌΜͱ͓ͬͯ͘ඞཁ͋Δɻ