Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践

コミュニティイベント配信基盤での サーバーレスアーキテクチャ実践

NRI さんの社内勉強会にて登壇させていただいた際の資料です。
AWS のマネージドサービスを活用したサーバーレスな配信基盤についての解説です。

2c51cbf972b0de2e0696c8a26c7d1f4b?s=128

matsuihidetoshi

February 09, 2022
Tweet

More Decks by matsuihidetoshi

Other Decks in Technology

Transcript

  1. দҪӳढ़ ίϛϡχςΟΠϕϯτ഑৴ج൫Ͱͷ αʔόʔϨεΞʔΩςΫνϟ࣮ફ

  2. ࣗݾ঺հ দҪӳढ़ ೥݄೔ੜ·Ε ੩Ԭݝཱ඿দ޻ۀߴ౳ֶߍ৘ใٕज़Պଔۀ ੡଄ۀɺݐங౔໦ɺελʔτΞοϓͳͲෳ਺ۀछɾ৬छܦݧ ೥͝ΖΑΓ8FCܥͷ։ൃʹܞΘΔ גࣜձࣾελʔτΞοϓςΫϊϩδʔςοΫϦʔυ ೥݄ΑΓ"844FSWFSMFTT)FSP

  3.  ৭ʑ͋ͬͯ౦ژ͔Β6λʔϯ  ब৬׆ಈ͕͖͔͚ͬͰ஍ݩͷٕज़ίϛϡχςΟʹࢀՃ͢Δ༷ʹͳΓɺ+"846(ͱग़ձ͏  ΄΅݄։࠵ͷษڧձͰԿ͔࡞ͬͯൃද͢Δͷ͕श׳ʹ  CVJMEFST fl BTI΁ͷهࣄͷΦϑΝʔΛ΋Β͍ɺఆظతʹدߘ

     ίϩφ΢ΠϧεରࡦͷγϏοΫςοΫʹࢀը  +"84%":4SF$POOFDU࣮ߦһ  "844FSWFSMFTT)FSPʹબ͹ΕΔ  +"841"/,3"5*0/6QUJMM%PXO࣮ߦҕһ +"846(ͱͷؔΘΓ
  4. +"84%":4SF$POOFDU ೥݄։࠵ +"846(೥ؒΛ௨ͯ͠࠷େͷΠϕϯτ աڈ࠷ߴͷਓ͍ۙࢀՃਃ͠ࠐΈ ίϛϡχςΟΠϕϯτͱͯ͠ࠃ಺࠷େڃ ΠϕϯταΠτɺ഑৴ج൫౳͸֎෦ҕୗͤͣ શͯίϛϡχςΟϝϯόʔ͕ߏங

  5. +"841"/,3"5*0/6QUJMM%PXO ೥݄։࠵  ࣌ؒ։࠵ͷΦϯϥΠϯΠϕϯτ  ੈքதͷ"84ίϛϡχςΟϝϯόʔ͕ొஃ  ϙέτʔΫΛ࢖ͬͨಉ࣌௨༁  ΠϕϯταΠτɺ഑৴ج൫౳͸֎෦ҕୗͤͣ

    શͯίϛϡχςΟϝϯόʔ͕ߏங
  6. ഑৴αΠτΛlˠzͰߏங ͳͥlΞϦϞϊzͰ͸ͳ͘lˠzͳͷ͔ʁ  ୈࡾऀʹ੍ݶΛड͚ͳ͍  ΦϦδφϦςΟͷ͋ΔମݧΛఏڙͰ͖Δ  ͍ͭͰʹαʔϏεͷ࣮ݧɾݕূʹ΋ͳΔ  ίϛϡχςΟͷఈྗΛ஌Β͠Ί͍ͨ

     ͳΜ͔Ϡό͍͜ͱ΍Γ͍ͨ
  7. ഑৴αʔόʔ͸Ͳ͏ͯ͠΋ඞཁ ख࡞Γ͢ΔͳΒʜ OHJOYSUNQNPEVMF IUUQTHJUIVCDPNBSVUOHJOYSUNQNPEVMF  "#3΍Γ͍ͨ  ૒ํ޲ͷΠϯλϥΫγϣϯ΍Γ͍ͨ  อଘ͍ͨ͠

     ϦΞϧλΠϜͳσʔλΛද͍ࣔͨ͠  αʔόʔམͱͨ͘͠ͳ͍  ਺ϲ݄Ͱ࡞Γ͍ͨ ˠͱͯ΋ݫ͍͠ʂʂ
  8. "NB[PO*74  OͷετϦʔϛϯά഑৴͕Ͱ͖Δ  4%,Ͱ؆୯ʹར༻Ͱ͖Δ  εέʔϧ͢Δ  ετϦʔϛϯά͍ͭͰʹ೚ҙͷσʔλ ΋ૹΕΔ

    ഑৴αΠτͷࣗ࡞ʹ࠷దʂ
  9. "NB[PO*74Λ࢖ͬͨߏ੒ ख࡞Γ͢ΔͳΒʜ  "#3ϑϩϯτͰରԠ͢Δ͚ͩ  ૒ํ޲ΠϯλϥΫγϣϯ5JNFE.FUBEBUB  อଘ͍ͨ͠ઃఆ͚ͩ  ϦΞϧλΠϜσʔλදࣔ5JNFE.FUBEBUB

     εέʔϧ"84ʹ͓೚ͤ  ਺ϲ݄Ͱ࡞Γ͍ͨશવͰ͖Δ ˠϋοϐʔʂʂ "NB[PO*74
  10. None
  11. None
  12. ഑৴୲౰ऀ͕ 4USFBN:BSE0#44UVEJPͰ "NB[PO*74ʹಈըૹ৴ *74͕ΫϥΠΞϯτʹಈը഑৴ ΫϥΠΞϯτଆ͸ެࣜ4%,ͱ7JEPFKTΛ ૊Έ߹Θ࣮ͤͯ૷

  13. "NQMJGZ։ൃ໘  Πϯϑϥ΋แׅͨ͠ϑϨʔϜɹɹɹ ϫʔΫͰര଎ͳ։ൃ  શ෦׬ᘳʹ࢖͏ඞཁ͸ͳ͘ɹɹɹɹ ඞཁͳ෦෼͔Β࢖͍͚ͬͯΔ  ଞͷαʔϏεΛ૊Έ߹Θͤͨɹɹɹ ϓϩτλΠϐϯάʹ࠷ద

  14. "NQMJGZӡ༻໘  ػೳΛ࣮ݱ͢Δίʔυ͕ͦͷ··ɹ Πϯϑϥ؅ཧͷίʔυʹ  ϚΠΫϩαʔϏεલఏͳͷͰޙ͔Β ෦෼తʹվमͯ͠΋͍͍

  15. /VYUKT  ۀ຿΍ࣗ෼ͷϒϩά։ൃͰ࢖͍ͬͯͨ  "NQMJGZ$POTPMFΛ࢖͍͔ͬͨͭ͘ͷ ϗεςΟϯάͷํ๏Λࢼߦࡨޡͨ͜͠ͱ ͕͋ͬͨʢ41"44(ʣ  σβΠϯγεςϜΛ࢖͍׳Ε͍ͯͨ ʢ7VFUJGZʣ

  16. ެࣜαϯϓϧ ˠ/1.Ͱґଘؔ܎͕ղܾͰ͖ͳ͍ʜ

  17. ղܾࡦ ެࣜͷίʔυ %0.ૢ࡞Ͱ௚઀షΓ෇͚Δʂ👊 ˠಈ͚͘Ͳμα͍ʜ

  18. "#3 "EBQUJWF#JU3BUF ௥Ճ ˠಈ͚͘Ͳґવμα͍ʜ ΫϥΠΞϯτଆͰϏοτϨʔτબ୒Մೳʹʂ 👊

  19. ղܾࡦ Ϗϧυ࣌ʹؚ·Εͳ͍ϑΝΠϧΛ $PQZ8FCQBDL1MVHJOͰίϐʔ ґଘϑΝΠϧΛͪΌΜͱ͖࣋ͬͯͯ ڧҾͳ%0.ૢ࡞Λഇࢭʂ

  20. λΠτϧ΍આ໌จΛߋ৽ ߋ৽ͷτϦΨʔͰ -BNCEBؔ਺Λ࣮ߦ 5JNFE.FUBEBUBͱͯ͠ λΠτϧ΍આ໌จΛૹ৴͢ΔΑ͏ "NB[PO*74ʹϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ λΠτϧͱઆ໌จΛදࣔʹ൓ө

  21. "NQMJGZͰόοΫΤϯυ΋ ؙͬͱ΍ͬͨ؅ཧը໘ ӡӦϝϯόʔͷೝূ

  22. Ξϯέʔτͷ੍ޚ ηογϣϯͷ  λΠτϧ  આ໌จ ͷߋ৽

  23. *74ετϦʔϜ63- ഑৴ϖʔδͷ4MVH ഑৴ϖʔδͷλΠτϧ ഑৴ϖʔδͷղઆจ ༗ޮແޮϑϥά Ξϯέʔτͷ*% Ξϯέʔτͷঢ়ଶ

  24. ໰୊ൃੜ

  25. *745JNFE.FUBEBUB2VPUBT ηογϣϯઆ໌จͷจࣈ਺଍Βͳ͍

  26. ෼ׂͯ͠ૹΖ͏ʢ୯७ʣ

  27. ݪจݪจݪจʜݪจ அย,FZ45"35 அย,FZ அย,FZ அย,FZ&/% ෼ׂ ճʹ෼͚ͯϦΫΤετ ݪจݪจݪจʜݪจ அย,FZ45"35 அย,FZ

    அย,FZ அย,FZ&/% ෮ݩ ճʹ෼͚ͯૹ৴ ௕Ίͷઆ໌จʹରԠʂ
  28. ϑϩϯτଆͷίʔυղઆ 5JNFE.FUBEBUBͷத਎ͷςΩετ ࣗ෼Ͱఆٛͨ͠ΠϕϯτͷछผͷΩʔ 5JNFE.FUBEBUBͷΠϕϯτΛτϦΨʔ

  29. ϑϩϯτଆͷίʔυղઆ ࣗݾఆٛͨ͠Πϕϯτͷछྨ͕આ໌จͷ৔߹ νϟϯΫσʔλͷ ऴΘΓͱॳΊΛݕ஌ νϟϯΫσʔλΛॱ࣍݁߹

  30.  σʔλ͕ߋ৽͞Εͯͳͯ͘΋  Կ౓΋܁Γฦ͠  ௨৴͕ԟ෮͢Δ  σʔλ͕ߋ৽͞Ε͚ͨ࣌ͩ  Ұํ௨ߦͰ௨৴͢Δ

  31. ࢹௌऀ਺ͷߋ৽ΛτϦΨʔʹͯ͠ -BNCEBؔ਺ͷ࣮ߦ ࢹௌऀ਺ͷ 5JNFE.FUBEBUBͱͯ͠ͷ ૹ৴Λ"NB[PO*74΁ ϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ ࢹௌऀ਺Λදࣔʹ൓ө 5JNFE.FUBEBUBͱͯ͠

    ࢹௌऀ਺Λૹ৴͢ΔΑ͏ "NB[PO*74ʹ ϦΫΤετ ࢹௌऀ਺ͷ औಘͱอଘ
  32. ॲཧΛͲ͜Ͱෛ୲͢Δ͔  5JNFE.FUBEBUBܦ༝ͳΒ໰୊ͳ͍  ϖʔδಡΈࠐΈ࣌͸Ͳ͏ͯ͠΋"1*͕ݺͼग़͞ΕΔ  %ZOBNP%#͔ΒಡΜͩ஋ʹର͢Δܭࢉॲཧ͕ඞཁ -BNCEB͸஋͚ͩΛฦ͠ ϑϩϯτଆͰॲཧ

  33. ؅ཧը໘͔ΒΞϯέʔτͷૢ࡞ ʢ։࢝క੾ˍ݁Ռදࣔऴྃʣ Ξϯέʔτ৘ใͷ 5JNFE.FUBEBUBͱͯ͠ͷ ૹ৴Λ"NB[PO*74ʹ ϦΫΤετ 5JNFE.FUBEBUBड৴ͷ ΠϕϯτΛϑοΫͯ͠ ΞϯέʔτΛදࣔʹ൓ө Ξϯέʔτঢ়ଶΛ

    ฒߦͯ͠ه࿥ ճ౴ͷ౤ߘͱӾཡ
  34. +"84%":4 ˣ +"841"/,3"5*0/

  35. ؅ཧը໘͸ࣗ࡞ͤͣʹ 4QSFBETIFFUΛ"1*Խͯ͠࢖༻ ഑৴ࢹௌऀ਺อଘɾදࣔͷ όοΫΤϯυ͸ίʔυ؅ཧͯ͠ ࠓޙͷΠϕϯτʹ΋ྲྀ༻Մೳʹ ഑৴ΦϖϨʔλʔଆͰ શͯͷ৘ใΛ߹੒ͯ͠ ಈը಺ʹؚΊΔ

  36. શͯͷ৘ใΛಈը಺ʹؚΊΔ ;PPN εϐʔΧʔϏϡʔ ηογϣϯλΠτϧ ొஃऀ৘ใ ϙέτʔΫͷ ຋༁ ࢹௌऀ਺ ηογϣϯεϥΠυ

  37. ͭͷΠϕϯτΛܦ্ͨͰͷΞ΢τϓοτ ࠷௿ݶ͸ίϐϖͰ࡞ΕΔ

  38. ࠓޙ΍͍͖͍ͬͯͨ͜ͱ  ࣗ࡞͢Δ͠ͳ͍ػೳͷݕ౼  +"84%":4Ϩϕϧͷػೳ͕ ࣮ݱͰ͖Δߏ੒ΛίʔυԽ  υΩϡϝϯτ੔උ ଐਓੑΛഉআͯ͠ ਝ଎ʹಠࣗ഑৴αΠτΛߏங

  39. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ