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
AWS-ハンズオンのススメ/サーバーレスアプリケーションの構築をやってみた
Search
yuuki sato
September 23, 2022
Programming
0
110
AWS-ハンズオンのススメ/サーバーレスアプリケーションの構築をやってみた
2022/09/22 JAWS-UG TOHOKU
yuuki sato
September 23, 2022
Tweet
Share
More Decks by yuuki sato
See All by yuuki sato
JAWS-UG TOHOKU 2022年 活動のふりかえり/jaws-ug_tohoku_review-of-activities_2022
kaba0120
0
93
はじめてのAWS Step Functions -Cloudfrontのキャッシュ誤りを検知するためのシステムを構築してみた-/lets-try-aws-step-functions
kaba0120
0
220
jaws-ug-tohoku-ec2imagebuilder
kaba0120
0
40
Lightsail_yukisat
kaba0120
0
45
jaws_ug_tohoku_jawsdays2021_recap_yukisat
kaba0120
0
51
Terraform-Lightsail
kaba0120
0
100
Other Decks in Programming
See All in Programming
ニーリーにおけるプロダクトエンジニア
nealle
0
580
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
4
990
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
130
XSLTで作るBrainfuck処理系
makki_d
0
210
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
230
ふつうの技術スタックでアート作品を作ってみる
akira888
0
150
VS Code Update for GitHub Copilot
74th
1
420
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
390
A2A プロトコルを試してみる
azukiazusa1
2
1.2k
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.4k
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
330
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
270
Featured
See All Featured
Six Lessons from altMBA
skipperchong
28
3.9k
Balancing Empowerment & Direction
lara
1
380
Raft: Consensus for Rubyists
vanstee
140
7k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
RailsConf 2023
tenderlove
30
1.1k
Bash Introduction
62gerente
614
210k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Music & Morning Musume
bryan
46
6.6k
Designing for Performance
lara
609
69k
For a Future-Friendly Web
brad_frost
179
9.8k
Building Adaptive Systems
keathley
43
2.6k
Transcript
ࠤ౻༏थ "84ϋϯζΦϯͷεεϝ ΠϯϑϥΤϯδχΞ͕αʔόϨεΣϒΞϓϦέʔγϣϯߏஙͷϋϯζΦϯΛͬͯΈͨ +"846(50)0,6౦Ͱಇ͘ΤϯδχΞͰ"84ΛޠΔձ<ॳ৺ऀେܴ>
w ໊લࠤ౻༏थ!ZVLJTBUV ࣾͰʮ͔ͪΌΜʯͱݺΕͯ·͢ɻ w גࣜձࣾΤεπʔ ΠϯϑϥΤϯδχΞ ओͳۀΦϯϓϨϛε͔Β"84ڥҠߦӡ༻อकΛߦͬͯ·͢ɻ w "84ྺ΄ͲͰ͢ɻ w
झຯΩϟϯϓ🏕 ਧ্Ωϟϯϓ ໐ࢠ ਆׂ࡚Ωϟϯϓ ೆࡾ ΔΆΆ ࡚ ΤίΩϟϯϓΈͪͷ͘ ࡚ ਫͷެԂΩϟϯϓ ઘ۠ ࣮Ոͷఉ ཧ ࣗݾհ
w ࠓճͷςʔϚʹ͍ͭͯ w ͞·͟·ͳ"84ϋϯζΦϯͷ͝հ w αʔόϨεΣϒΞϓϦέʔγϣϯͷϋϯζΦϯΛͬͯΈͨ w ·ͱΊ ΞδΣϯμ
w ۀҎ֎ͷ"84αʔϏεʹ৮Ε͍ͯͨ͘ΊʹͲ͏͢Ε͍͍͔ߟ͍͑ͯ·ͨ͠ɻ w ࢿ֨ษڧΛ͍ͯ͠Δͱ৮Εͨ͜ͱͷͳ͍αʔϏε͕ग़͖ͯͯΠϝʔδ͕༙͔ͳ͍͜ͱɻ w ΠϯϑϥۀͰ։ൃऀଆΛཧղ͠ͳ͍ͱઃܭ͕͍͠໘૿͖͑ͯͨɻ w "84ઃܭͷษڧΛͭͭ͠ίʔυֶͿͷ͕࣌ؒ݁ߏ͔͔ͬͯ͠·͏ɻ ຊίʔυཧղֶͯ͠ΜͰ͍͘ͷ͕ϕετͩͱࢥͬͯ·͢
ࠓճͷςʔϚʹ͍ͭͯ
w "84ϋϯζΦϯࢿྉ "84)BOETPOGPS#FHJOOFST w ΞϚκϯΣϒαʔϏε "84 ͷ࣮ફతνϡʔτϦΞϧ w CVJMEFST
fl BTI ͞·͟·ͳ"84ϋϯζΦϯͷ͝հ
w "84ॳ৺ऀ͚ͷϋϯζΦϯ͕·ͱ·͍ͬͯ·͢ɻ w "84ΞΧϯτͷ࡞ํ๏ΞΧϯτ࡞ޙ͙͢ΔηΩϡϦςΟରࡦ w ςΩετ͚ͩͰΠϝʔδ͠ʹ͍͘ωοτϫʔΫपΓΦεεϝͰ͢ɻ "84ϋϯζΦϯࢿྉ "84)BOETPOGPS#FHJOOFST ಈըΛݟͳ͕ΒਐΊΒΕΔͷͰΘ͔Γ͍͢✨ Ҿ༻ݩ:
https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-hands-on/
w ΑΓ࣮ફతͳϋϯζΦϯ͕·ͱ·͓ͬͯΓ·͢ɻ w σʔλϕʔεܥػցֶशͷϋϯζΦϯ๛ w ۀͰ৮ΕΔ͜ͱͷͳ͍αʔϏεΛ৮Ε͍ͨํʹΦεεϝͰ͢ʂ ΞϚκϯΣϒαʔϏε "84 ͷ࣮ફతνϡʔτϦΞϧ ࣗͷϨϕϧʹ͋ͬͨϋϯζΦϯ͕બՄೳ🧑💻
w 5XJUUFSͷ#PUΛ࡞͢ΔͳͲ࣮ફతͳϋϯζΦϯ w "84+ࣾһͷํͷϥʔχϯάύλʔϯ͓͢͢Ίॻ੶ͷհ w "84άϥϨίղઆγϦʔζͬ͘͟Γͱͨ͠ΠϝʔδΛ௫ΉͷʹΦεεϝͰ͢ʂ CVJMEFSTGMBTI มԽΛٻΊΔσϕϩούʔΛԠԉ͢ΔΣϒϚΨδϯ📚
αʔόϨεΣϒΞϓϦέʔγϣϯͷϋϯζΦϯΛͬͯΈͨ
࣮ࡍʹϋϯζΦϯΛ࣮ࢪͯ͠Έͨ "NQMJGZͱ$PHOJUPΛ༻ͯ͠Έ͔ͨͬͨͷͰͪ͜ΒΛબΜͰΈ·ͨ͠ɻ
࣮ࡍʹϋϯζΦϯΛ࣮ࢪͯ͠Έͨ Πϝʔδ͕ͪ͜Β✨ ᶃ ᶄ ᶇ ᶆ ᶅ ᶈ topϖʔδ αΠϯΠϯը໘
ϩάΠϯޙ ݺͼग़͢ҐஔΛબ ۙ͘ͷϢχίʔϯ͕ݺͼग़͞ΕΔ DynamoDBʹใ͕֨ೲ͞ΕΔ
࣮ࡍʹϋϯζΦϯΛ࣮ࢪͯ͠Έͨ ࠓճͷΞϓϦέʔγϣϯͷΞʔΩςΫνϟͰ͢⚙ Ҿ༻ݩ: https://aws.amazon.com/jp/getting-started/hands-on/build-serverless-web-app-lambda-apigateway-s3-dynamodb-cognito/
࣮ࡍʹϋϯζΦϯΛ࣮ࢪͯ͠Έͨ "NQMJGZͱ$PHOJUPͳ؆୯ͳઆ໌🔰 w "NQMJGZͱ ɹϞόΠϧΞϓϦέʔγϣϯͱΣϒΞϓϦέʔγϣϯΛߏங͢ΔͨΊͷ ɹ"84͕044Ͱެ։͢Δ։ൃϓϥοτϑΥʔϜͰ͢ɻ ɹ4ͱ$MPVEGSPOU͕ࣗಈతʹηοτΞοϓ͞Εෛՙʹڧ͍αΠτΛ࡞Δ͜ͱ͕Մೳ
w $PHOJUPͱ ɹΣϒΞϓϦέʔγϣϯϞόΠϧΞϓϦʹ؆୯ʹϢʔβʔͷ ɹαΠϯΞοϓαΠϯΠϯɺΞΫηείϯτϩʔϧͷػೳΛՃͰ͖ΔαʔϏεͰ͢ɻ
࣮ࡍʹϋϯζΦϯΛ࣮ࢪͯ͠Έͨ ͭͷϞδϡʔϧͰߏ͞Ε͍ͯ·͢👨💻
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ ܧଓతσϓϩΠͷϏϧτΠϯͰΣϒΞϓϦέʔγϣϯͷ੩తϦιʔεΛϗετ͢ΔΑ͏ʹ "84"NQMJGZΛઃఆ͠·͢
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ $PEFDPNNJUͷϦϙδτϦΛ࡞͠4ʹ͋ΔαϯϓϧίʔυΛμϯϩʔυ͠ϦϙδτϦQVTI
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ "NQMJGZίϯιʔϧ͕੩తΣϒΞϓϦέʔγϣϯίʔυΛอଘ͢ΔॴͷηοτΞοϓΛ࣮ࢪ
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ ͜Ε͚ͩͷઃఆͰ$PEF$PNNJUQVTI͢ΔͱࣗಈͰσϓϩΠ͕࣮ࢪ͞Ε·͢✨
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ ઃఆ͔ͯ͠ΒͰσϓϩΠྃ
Ϟδϡʔϧ੩తΣϒαΠτΛϗετ͢Δ ΫϦοΫͰ੩తΣϒϗεςΟϯά͕ޭ͠·ͨ͠
ϞδϡʔϧϢʔβʔཧج൫ͷߏங
ϞδϡʔϧϢʔβʔཧج൫ͷߏங $PHOJUPϢʔβʔϓʔϧͷ࡞ΞϓϦΫϥΠΞϯτ*%Λൃߦ͠·͢ɻ
ϞδϡʔϧϢʔβʔཧج൫ͷߏங αϯϓϧίʔυͷDPO fi HKTΛهೖͯ͠ΣϒαΠτͷઃఆΛߋ৽ͯ͠ϦϙδτϦQVTI͠·͢ɻ
ϞδϡʔϧϢʔβʔཧج൫ͷߏங ಈ࡞֬ೝͷͨΊαϯϓϧϢʔβʔΛొ
ϞδϡʔϧϢʔβʔཧج൫ͷߏங $PHOJUPͷཧը໘͔ΒϢʔβʔͷ֬ೝΛߦ͏͜ͱͰݕূϓϩηεΛྃͤ͞Δ͜ͱͰ͖·͢ɻ
ϞδϡʔϧϢʔβʔཧج൫ͷߏங ແࣄϩάΠϯͰ͖·ͨ͠🙌
ϞδϡʔϧαʔόϨεόοΫΤϯυͷߏங Ϟδϡʔϧͷৄࡉͳखॱলུ͍͖ͤͯͨͩ͞·͢🙇 %ZOBNP%#ςʔϒϧΛ࡞͠ɺ-BNCEBαϯϓϧίʔυΛΞοϓϩʔυ͢Δ࡞ۀͱͳΓ·͢ɻ
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ ͍Α͍Α࠷ऴఔͷϞδϡʔϧͰ͢
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ "NB[PO"1*(BUFXBZͷཧը໘ΑΓ3&45"1*ͷ࡞
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ ΦʔιϥΠβʔͷ࡞ $PHOJUPϢʔβʔϓʔϧʹΑͬͯฦ͞ΕΔ+85τʔΫϯΛ༻ͯ͠"1*ίʔϧΛೝূ͢Δઃఆ
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ SJEFϦιʔεΛ࡞͠1045ϝιουΛ࡞
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ "1*σϓϩΠͱΣϒαΠτͷઃఆΛߋ৽ͯ͠ͱͳΓ·͢👏
Ϟδϡʔϧ3&45GVM"1*ΛσϓϩΠ ͍Α͍Α࠷ޙͷಈ࡞֬ೝ👀 υΩυΩ
ಈ࡞֬ೝ ͔͜͜Β͍ઓ͍͕࢝·Γ·͢🔥 Θ͔Βͳ͍ͳΓʹ+BWB4DSJQUͱͷίʔυͱ֨ಆ͠·ͨ͠🔥🔥🔥
ಈ࡞֬ೝ ৭ʑͱௐࠪͯ͠ΈΔͱ "SD(*4ͷαϙʔτ͕ऴ͍ྃͯͨ͜͠ͱ͕ݪҼͰͨ͠🥲
ಈ࡞֬ೝ ࠓදࣔ͞Ε·ͨ͠🎉 ͔͠͠·ͩଓ͖·͢ਤΛΫϦοΫͯ͠ԿԠ͕͋Γ·ͤΜɻɻ
ಈ࡞֬ೝ ೪Γ·͕ͨࣗ͠ྗͰղܾͰ͖ͣ ϝϯόʔʹϔϧϓΛ͠·ͯ͠Τϥʔௐࠪํ๏Λڭ͍͖͑ͯͨͩ·ͨ͠N @@ N Τϥʔ༰ˠ6ODBVHIU5ZQF&SSPSWJFXUIFOJTOPUBGVODUJPO WJFXUIFO͕ؔݺͼग़͍ͤͯͳ͍͜ͱ͕ݪҼͷΑ͏Ͱ͢ɻ ࠔͬͨ࣌σϕϩούʔπʔϧͷ$POTPMFΛ֬ೝ
ಈ࡞֬ೝ "SD(*4ͷ"1*ϦϑΝϨϯεΛ֬ೝͯ͠ΈΔͱΤϥʔͷग़͍͕ͯͨؔมߋ͞Ε͍ͯ·ͨ͠⚡ Τϥʔ༰ˠ6ODBVHIU5ZQF&SSPSWJFXUIFOJTOPUBGVODUJPO WJFXUIFO͕ؔݺͼग़͍ͤͯͳ͍͜ͱ͕ݪҼͷΑ͏Ͱ͢ɻ ࠔͬͨ࣌σϕϩούʔπʔϧͷ$POTPMFΛ֬ೝ
ಈ࡞֬ೝ ίʔυΛमਖ਼ͯ͠ϦϙδτϦQVTI͠·͢💻
ಈ࡞֬ೝ ࠓͪΌΜͱϚʔΫ͞Ε·ͨ͠
ಈ࡞֬ೝ ࠓϢχίʔϯͷΞχϝʔγϣϯʹෆ۩߹͕ൃੜ ೦ͳ͕ΒλΠϜΞοϓͱͳΓͪ͜Βमਖ਼Ͱ͖·ͤΜͰͨ͠ 55
ಈ࡞֬ೝ %ZOBNP%#ͷॻ͖ࠐΈͪΌΜͱಈ࡞͍ͯ͠·ͨ͠👏
·ͱΊ
w ࣮ࡍʹಈ͘αʔϏεΛߏஙͰ͖Δͷ໘ന͘ɺͱͯڵຯ͕༙͖·ͨ͠✨ w ϋϯζΦϯ࣮ࢪͯ͠Ξτϓοτ͢ΔͱΑΓཧղ͕ਂ·Δ͜ͱΛܦݧͰ͖·ͨ͠🙌 w ࠓճϋϯζΦϯप͠·ͯ͠ɺ܁Γฦ࣮͠ࢪ͢Δ͜ͱେͩͱࢥ͍·ͨ͠🔄 िˠͱΓ͋͑ͣಈ͘ͱ͜Ζ·ͰਐΊΔɻ िˠΘ͔Βͳ͍ͱ͜ΖΛௐͳ͕ΒਐΊΔɻ िˠৄࡉͳखॱݟͣʹϞδϡʔϧͷݟग़͚ͩ֬͠ೝͯ͠ߏஙͯ͠ΈΔɻ ·ͱΊ
w ࣮ࡍʹಈ͘αʔϏεΛߏஙͰ͖Δͷͱͯ໘ന͘ɺͱͯڵຯ͕༙͖·ͨ͠✨ w ϋϯζΦϯ࣮ࢪͯ͠Ξτϓοτ͢ΔͱΑΓཧղ͕ਂ·Δ͜ͱΛܦݧͰ͖·ͨ͠🙌 w ࠓճϋϯζΦϯप͠·ͯ͠ɺ܁Γฦ࣮͠ࢪ͢Δ͜ͱେͩͱࢥ͍·ͨ͠🔄 िˠͱΓ͋͑ͣಈ͘ͱ͜Ζ·ͰਐΊΔɻ िˠΘ͔Βͳ͍ͱ͜ΖΛௐͳ͕ΒਐΊΔɻ िˠৄࡉͳखॱݟͣʹϞδϡʔϧͷݟग़͚ͩ֬͠ೝͯ͠ߏஙͯ͠ΈΔɻ ·ͱΊ
ϋϯζΦϯΛ࣮ࢪͯ͠Έͯ৽͍͕ٙ͠ੜ·Εͨ͜ͱ͕ऩ֭Ͱͨ͠👨💻 $PHOJUPͷೝূͷৄࡉ"NQMJGZͷػೳͳͲෆ໌ͳ͕ଟ͔ͬͨͷͰ ܧଓతʹ࣮ࢪͯ͠ཧղΛਂΊ͍͖͍ͯͨͰ͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ