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
コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践
Search
matsuihidetoshi
February 09, 2022
Technology
0
580
コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践
NRI さんの社内勉強会にて登壇させていただいた際の資料です。
AWS のマネージドサービスを活用したサーバーレスな配信基盤についての解説です。
matsuihidetoshi
February 09, 2022
Tweet
Share
More Decks by matsuihidetoshi
See All by matsuihidetoshi
web-application-security
matsuihidetoshi
1
260
JAWS DAYS 2024 C-9
matsuihidetoshi
0
130
クラウドだからできた 地方主導のJAWS DevOps
matsuihidetoshi
2
400
既存システムのコンテナ化で得られた知見と、 全然関係ないけど自炊を支える技術
matsuihidetoshi
0
950
Media JAWS 2023/1
matsuihidetoshi
1
540
Efforts to Organizing & Broadcastiong JAWS-UG's global event "JAWS PANKRATION 2021 -Up till Down-"
matsuihidetoshi
0
130
サーバレスアーキテクチャの考え方
matsuihidetoshi
0
48
再利用可能なサーバーレス配信コンポーネント
matsuihidetoshi
0
170
Amplify とノー(ロー)コード開発
matsuihidetoshi
0
150
Other Decks in Technology
See All in Technology
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
120
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
470
AGIについてChatGPTに聞いてみた
blueb
0
130
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
TypeScript、上達の瞬間
sadnessojisan
46
13k
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
470
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
590
Terraform Stacks入門 #HashiTalks
msato
0
350
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
140
Featured
See All Featured
The Cult of Friendly URLs
andyhume
78
6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Unsuck your backbone
ammeep
668
57k
Automating Front-end Workflow
addyosmani
1366
200k
Building Applications with DynamoDB
mza
90
6.1k
Why Our Code Smells
bkeepers
PRO
334
57k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Adopting Sorbet at Scale
ufuk
73
9.1k
Navigating Team Friction
lara
183
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Transcript
দҪӳढ़ ίϛϡχςΟΠϕϯτ৴ج൫Ͱͷ αʔόʔϨεΞʔΩςΫνϟ࣮ફ
ࣗݾհ দҪӳढ़ ݄ੜ·Ε ੩Ԭݝཱদۀߴֶߍใٕज़Պଔۀ ۀɺݐஙɺελʔτΞοϓͳͲෳۀछɾ৬छܦݧ ͝ΖΑΓ8FCܥͷ։ൃʹܞΘΔ גࣜձࣾελʔτΞοϓςΫϊϩδʔςοΫϦʔυ ݄ΑΓ"844FSWFSMFTT)FSP
৭ʑ͋ͬͯ౦ژ͔Β6λʔϯ ब৬׆ಈ͕͖͔͚ͬͰݩͷٕज़ίϛϡχςΟʹࢀՃ͢Δ༷ʹͳΓɺ+"846(ͱग़ձ͏ ΄΅݄։࠵ͷษڧձͰԿ͔࡞ͬͯൃද͢Δͷ͕श׳ʹ CVJMEFST fl BTIͷهࣄͷΦϑΝʔΛΒ͍ɺఆظతʹدߘ
ίϩφΠϧεରࡦͷγϏοΫςοΫʹࢀը +"84%":4SF$POOFDU࣮ߦһ "844FSWFSMFTT)FSPʹબΕΔ +"841"/,3"5*0/6QUJMM%PXO࣮ߦҕһ +"846(ͱͷؔΘΓ
+"84%":4SF$POOFDU ݄։࠵ +"846(ؒΛ௨ͯ͠࠷େͷΠϕϯτ աڈ࠷ߴͷਓ͍ۙࢀՃਃ͠ࠐΈ ίϛϡχςΟΠϕϯτͱͯ͠ࠃ࠷େڃ ΠϕϯταΠτɺ৴ج൫֎෦ҕୗͤͣ શͯίϛϡχςΟϝϯόʔ͕ߏங
+"841"/,3"5*0/6QUJMM%PXO ݄։࠵ ࣌ؒ։࠵ͷΦϯϥΠϯΠϕϯτ ੈքதͷ"84ίϛϡχςΟϝϯόʔ͕ొஃ ϙέτʔΫΛͬͨಉ࣌௨༁ ΠϕϯταΠτɺ৴ج൫֎෦ҕୗͤͣ
શͯίϛϡχςΟϝϯόʔ͕ߏங
৴αΠτΛlˠzͰߏங ͳͥlΞϦϞϊzͰͳ͘lˠzͳͷ͔ʁ ୈࡾऀʹ੍ݶΛड͚ͳ͍ ΦϦδφϦςΟͷ͋ΔମݧΛఏڙͰ͖Δ ͍ͭͰʹαʔϏεͷ࣮ݧɾݕূʹͳΔ ίϛϡχςΟͷఈྗΛΒ͠Ί͍ͨ
ͳΜ͔Ϡό͍͜ͱΓ͍ͨ
৴αʔόʔͲ͏ͯ͠ඞཁ ख࡞Γ͢ΔͳΒʜ OHJOYSUNQNPEVMF IUUQTHJUIVCDPNBSVUOHJOYSUNQNPEVMF "#3Γ͍ͨ ํͷΠϯλϥΫγϣϯΓ͍ͨ อଘ͍ͨ͠
ϦΞϧλΠϜͳσʔλΛද͍ࣔͨ͠ αʔόʔམͱͨ͘͠ͳ͍ ϲ݄Ͱ࡞Γ͍ͨ ˠͱͯݫ͍͠ʂʂ
"NB[PO*74 OͷετϦʔϛϯά৴͕Ͱ͖Δ 4%,Ͱ؆୯ʹར༻Ͱ͖Δ εέʔϧ͢Δ ετϦʔϛϯά͍ͭͰʹҙͷσʔλ ૹΕΔ
৴αΠτͷࣗ࡞ʹ࠷దʂ
"NB[PO*74Λͬͨߏ ख࡞Γ͢ΔͳΒʜ "#3ϑϩϯτͰରԠ͢Δ͚ͩ ํΠϯλϥΫγϣϯ5JNFE.FUBEBUB อଘ͍ͨ͠ઃఆ͚ͩ ϦΞϧλΠϜσʔλදࣔ5JNFE.FUBEBUB
εέʔϧ"84ʹ͓ͤ ϲ݄Ͱ࡞Γ͍ͨશવͰ͖Δ ˠϋοϐʔʂʂ "NB[PO*74
None
None
৴୲ऀ͕ 4USFBN:BSE0#44UVEJPͰ "NB[PO*74ʹಈըૹ৴ *74͕ΫϥΠΞϯτʹಈը৴ ΫϥΠΞϯτଆެࣜ4%,ͱ7JEPFKTΛ Έ߹Θ࣮ͤͯ
"NQMJGZ։ൃ໘ Πϯϑϥแׅͨ͠ϑϨʔϜɹɹɹ ϫʔΫͰരͳ։ൃ શ෦ᘳʹ͏ඞཁͳ͘ɹɹɹɹ ඞཁͳ෦͔Β͍͚ͬͯΔ ଞͷαʔϏεΛΈ߹Θͤͨɹɹɹ ϓϩτλΠϐϯάʹ࠷ద
"NQMJGZӡ༻໘ ػೳΛ࣮ݱ͢Δίʔυ͕ͦͷ··ɹ Πϯϑϥཧͷίʔυʹ ϚΠΫϩαʔϏεલఏͳͷͰޙ͔Β ෦తʹվम͍͍ͯ͠
/VYUKT ۀࣗͷϒϩά։ൃͰ͍ͬͯͨ "NQMJGZ$POTPMFΛ͍͔ͬͨͭ͘ͷ ϗεςΟϯάͷํ๏Λࢼߦࡨޡͨ͜͠ͱ ͕͋ͬͨʢ41"44(ʣ σβΠϯγεςϜΛ͍׳Ε͍ͯͨ ʢ7VFUJGZʣ
ެࣜαϯϓϧ ˠ/1.Ͱґଘ͕ؔղܾͰ͖ͳ͍ʜ
ղܾࡦ ެࣜͷίʔυ %0.ૢ࡞ͰషΓ͚Δʂ👊 ˠಈ͚͘Ͳμα͍ʜ
"#3 "EBQUJWF#JU3BUF Ճ ˠಈ͚͘Ͳґવμα͍ʜ ΫϥΠΞϯτଆͰϏοτϨʔτબՄೳʹʂ 👊
ղܾࡦ Ϗϧυ࣌ʹؚ·Εͳ͍ϑΝΠϧΛ $PQZ8FCQBDL1MVHJOͰίϐʔ ґଘϑΝΠϧΛͪΌΜͱ͖࣋ͬͯͯ ڧҾͳ%0.ૢ࡞Λഇࢭʂ
λΠτϧઆ໌จΛߋ৽ ߋ৽ͷτϦΨʔͰ -BNCEBؔΛ࣮ߦ 5JNFE.FUBEBUBͱͯ͠ λΠτϧઆ໌จΛૹ৴͢ΔΑ͏ "NB[PO*74ʹϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ λΠτϧͱઆ໌จΛදࣔʹө
"NQMJGZͰόοΫΤϯυ ؙͬͱͬͨཧը໘ ӡӦϝϯόʔͷೝূ
Ξϯέʔτͷ੍ޚ ηογϣϯͷ λΠτϧ આ໌จ ͷߋ৽
*74ετϦʔϜ63- ৴ϖʔδͷ4MVH ৴ϖʔδͷλΠτϧ ৴ϖʔδͷղઆจ ༗ޮແޮϑϥά Ξϯέʔτͷ*% Ξϯέʔτͷঢ়ଶ
ൃੜ
*745JNFE.FUBEBUB2VPUBT ηογϣϯઆ໌จͷจࣈΒͳ͍
ׂͯ͠ૹΖ͏ʢ୯७ʣ
ݪจݪจݪจʜݪจ அย,FZ45"35 அย,FZ அย,FZ அย,FZ&/% ׂ ճʹ͚ͯϦΫΤετ ݪจݪจݪจʜݪจ அย,FZ45"35 அย,FZ
அย,FZ அย,FZ&/% ෮ݩ ճʹ͚ͯૹ৴ Ίͷઆ໌จʹରԠʂ
ϑϩϯτଆͷίʔυղઆ 5JNFE.FUBEBUBͷதͷςΩετ ࣗͰఆٛͨ͠ΠϕϯτͷछผͷΩʔ 5JNFE.FUBEBUBͷΠϕϯτΛτϦΨʔ
ϑϩϯτଆͷίʔυղઆ ࣗݾఆٛͨ͠Πϕϯτͷछྨ͕આ໌จͷ߹ νϟϯΫσʔλͷ ऴΘΓͱॳΊΛݕ νϟϯΫσʔλΛॱ࣍݁߹
σʔλ͕ߋ৽͞Εͯͳͯ͘ Կ܁Γฦ͠ ௨৴͕ԟ෮͢Δ σʔλ͕ߋ৽͞Ε͚ͨ࣌ͩ Ұํ௨ߦͰ௨৴͢Δ
ࢹௌऀͷߋ৽ΛτϦΨʔʹͯ͠ -BNCEBؔͷ࣮ߦ ࢹௌऀͷ 5JNFE.FUBEBUBͱͯ͠ͷ ૹ৴Λ"NB[PO*74 ϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ ࢹௌऀΛදࣔʹө 5JNFE.FUBEBUBͱͯ͠
ࢹௌऀΛૹ৴͢ΔΑ͏ "NB[PO*74ʹ ϦΫΤετ ࢹௌऀͷ औಘͱอଘ
ॲཧΛͲ͜Ͱෛ୲͢Δ͔ 5JNFE.FUBEBUBܦ༝ͳΒͳ͍ ϖʔδಡΈࠐΈ࣌Ͳ͏ͯ͠"1*͕ݺͼग़͞ΕΔ %ZOBNP%#͔ΒಡΜͩʹର͢Δܭࢉॲཧ͕ඞཁ -BNCEB͚ͩΛฦ͠ ϑϩϯτଆͰॲཧ
ཧը໘͔ΒΞϯέʔτͷૢ࡞ ʢ։࢝కˍ݁Ռදࣔऴྃʣ Ξϯέʔτใͷ 5JNFE.FUBEBUBͱͯ͠ͷ ૹ৴Λ"NB[PO*74ʹ ϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ ΞϯέʔτΛදࣔʹө Ξϯέʔτঢ়ଶΛ
ฒߦͯ͠ه ճͷߘͱӾཡ
+"84%":4 ˣ +"841"/,3"5*0/
ཧը໘ࣗ࡞ͤͣʹ 4QSFBETIFFUΛ"1*Խͯ͠༻ ৴ࢹௌऀอଘɾදࣔͷ όοΫΤϯυίʔυཧͯ͠ ࠓޙͷΠϕϯτʹྲྀ༻Մೳʹ ৴ΦϖϨʔλʔଆͰ શͯͷใΛ߹ͯ͠ ಈըʹؚΊΔ
શͯͷใΛಈըʹؚΊΔ ;PPN εϐʔΧʔϏϡʔ ηογϣϯλΠτϧ ొஃऀใ ϙέτʔΫͷ ༁ ࢹௌऀ ηογϣϯεϥΠυ
ͭͷΠϕϯτΛܦ্ͨͰͷΞτϓοτ ࠷ݶίϐϖͰ࡞ΕΔ
ࠓޙ͍͖͍ͬͯͨ͜ͱ ࣗ࡞͢Δ͠ͳ͍ػೳͷݕ౼ +"84%":4Ϩϕϧͷػೳ͕ ࣮ݱͰ͖ΔߏΛίʔυԽ υΩϡϝϯτඋ ଐਓੑΛഉআͯ͠ ਝʹಠࣗ৴αΠτΛߏங
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ