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サーバーレスアーキテクチャ導入の基礎とその概念/serverless-webinar-01
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Serverless Operations
July 03, 2020
Programming
620
0
Share
実践AWSサーバーレスアーキテクチャ導入の基礎とその概念/serverless-webinar-01
Serverless Operations
July 03, 2020
More Decks by Serverless Operations
See All by Serverless Operations
2026年、知っておくべき最新 サーバレスTips10選/serverless-10-tips
slsops
13
5.4k
「うまく言えない」検索を叶える ― OpenSearchと生成AIで作る 類似プロジェクト検索
slsops
1
65
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
3
510
Lambdalithアーキテクチャにより大きく進化するWeb APIの世界/lambdalith
slsops
5
1.2k
ITベンダーから見る内製化支援の本質/in-house-dev
slsops
1
830
Case Study for Repurposing Video Content With Generative AI / AWS Community Day Taiwan 2024
slsops
0
500
サーバーレスなユーザー認証認可の考慮事項と実践的プラクティス紹介 / slsdays-tokyo-2024
slsops
11
4.5k
サーバーレスで負荷試験を行う必要性と実践的プラクティスの紹介/slsdays-tokyo-2023
slsops
4
2.8k
Serverless Web Hosting Strategy For Modern Front-end Application
slsops
0
490
Other Decks in Programming
See All in Programming
Agentic Elixir
whatyouhide
0
420
The Less-Told Story of Socket Timeouts
coe401_
3
780
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
3
830
CDK Deployのための ”反響定位”
watany
5
900
Kingdom of the Machine
yui_knk
2
1.2k
🦞OpenClaw works with AWS
licux
1
300
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
460
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
160
AIエージェントで業務改善してみた
taku271
0
550
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
1.1k
From Formal Specification to Property Based Test
ohbarye
0
470
의존성 주입과 모듈화
fornewid
0
150
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Designing for Timeless Needs
cassininazir
0
210
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
820
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
180
Side Projects
sachag
455
43k
For a Future-Friendly Web
brad_frost
183
10k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
130
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
4FSWFSMFTT0QFSBUJPOTງՈོ ࣮ફAWSαʔόʔϨεΞʔΩςΫνϟ ಋೖͷجૅͱͦͷ֓೦
ࣗݾհ גࣜձࣾServerless Operations CEO ΦʔϓϯιʔεLover αʔόʔϨεϛʔτΞοϓOrganizer
αʔόʔϨεͰ ΫϥυͷՁΛ࠷େݶʹ Serverless Operations ͜Ε·ͰάϩʔόϧͷୈҰઢͰ ഓ͖ͬͯͨΫϥυٕज़ʢ"84ʵΞϚκϯΣϒαʔϏεʣͷ ๛ͳ࣮ͱݟΛ׆͔͠ɺ͓٬͞·ͷαʔόʔϨε ʹؔ͢Δ͞·͟·ͳ՝Λղܾ͠·͢ɻ ձࣾհ serverless.co.jp
803,
0VS0QFO4PVSDF1SPEVDUT
ͳͥαʔόʔϨεͳͷ͔ʁ
࣮ऀͷϦιʔεΛຊ࣭ʹϑΥʔΧε͢ΔͨΊ ྫ͑ήʔϜιϑτΛ։ൃ͢Δ࣌ʹϑΥʔΧε͍ͨ͠ͷήʔϜͷγφϦΦͷϓϩάϥ ϜɻͦΕҎ֎ͷ։ൃӡ༻Ͱ͖ΔݶΓΫϥυʹΞτιʔε ։ൃऀͷϦιʔεΛຊ࣭తͳ͜ͱʹूதͯ͠ɺͦΕҎ֎ͷίετग़དྷΔݶΓݮ͢Δ ΠϯϑϥɺೝূೝՄɺܾࡁγεςϜɺϝʔϧ৴ͳͲͷߏஙӡ༻͠ͳ͍ɻ Ϋϥυ4BB4ͷαʔϏεΛͰ͖Δ͚ͩར༻͢Δ͜ͱͰຊ࣭ʹूத͢Δ
ϓϩμΫτͷ࣭ΛΞʔΩςΫνϟϨϕϧͰ୲อ ग़དྷΔݶΓোΛൃੜͤ͞ͳ͍ͨΊʹΞʔΩςΫνϟϨϕϧͰεέʔϥϏϦςΟͱ ߴՄ༻ੑΛ࣮ݱ͢Δ ͦͷͨΊʹΫϥυͷఏڙ͢ΔαʔόʔϨεͳαʔϏεΛ׆༻͢Δ "84(PPHMFͷ༏लͳਓ͕ͨͪ࡞ͬͨΠϯϑϥͷΈαϙʔτͷ্ʹ ͔ͬΔ͜ͱͷ҆৺ײɻ
ίετͷݮ ΞΫηε͕গͳ͍͏ͪѹతʹίετ͕͍҆ ͭ·Γখ͘͞ॳΊͯେ͖͘εέʔϧ͍͢͠ ࣮ߦ͞Εͨ࣌ؒʹରͯ͠՝ۚ͞ΕΔΈʹΑΓɺ ࣮֬ʹίετ࠷దԽ͞ΕΔɻΠϯϑϥͷোΫϥυͷதʹ͍Δ༏लͳ ਓୡʹͤΔ͜ͱͰΠϯγσϯτίετൃੜͤ͞ͳ͍
ͭ·Γ ΞʔΩςΫνϟϨϕϧͰߴ࣭͔ͭίετΛ࠷ద Խͨ͠ঢ়ଶͰɺϓϩμΫτͷຊ࣭తͳ։ൃʹϦιʔ εΛूத͢ΔͨΊʹαʔόʔϨεͳαʔϏεΛ׆༻ ͯ͠࡞ΔબΛ͢Δ
αʔόʔϨεͳαʔϏεͱʁ ͪΌΜͱ"84ͷ༻ޠͰ͍͏ͱ ϑϧϚωʔδυαʔϏεͱ͍͍·͢
ϑϧϚωʔδυαʔϏεͱ "84ͷαʔϏεͷதͰͦͷػೳ͚ͩͰͳ͘ߏஙӡ༻ཧͳͲҰׅͯ͠ఏڙͯ͘͠ ΕΔͷ͕ϚωʔδυαʔϏε ͦΕʹ߹ΘͤͯɺਫฏํͷεέʔϦϯάԽʹΑΔՄ༻ੑɻͦͷσΟεΫ༰ྔ ύʔςΟγϣχϯάͷཧશؚͯΊͯαʔϏεͱͯ͠ఏڙͯ͘͠ΕΔͷΛϑϧϚ ωʔδυαʔϏεͱ͍͏
"84ͷϑϧϚωʔδυαʔϏε 'BB4 ΞϓϦέʔγϣϯ %#ɾετϨʔδ ϝοηʔδϯά ετϦʔϜ "1*(BUFXBZ %ZOBNP%# "QQ4ZOD 4
-BNCEB 4/4 424 &WFOU#SJEHF ,JOFTJT
·ͣAWS Lambda(FaaS)ͱ ͦͷΞʔΩςΫνϟʹεϙοτΛͯΔ
"84-BNCEB 'BB4 ͷಛͱϝϦοτ ΞϓϦέʔγϣϯίʔυΛ࣮ߦͯ͘͠ΕΔαʔϏε Πϕϯτ͕ൃੜ͢Δ͜ͱͰίʔυ͕࣮ߦ͞ΕΔ ࣗಈతʹฒྻํʹεέʔϦϯάͯ͘͠ΕΔ ίʔυ͕࣮ߦ͞Εͨ࣌ؒʹରͯ͠ͷ՝ۚɻΞϓϦέʔγϣϯͷಛੑ࣍ୈͰେ͖ͳݮ ݟࠐΊΔ ίʔυΛಈ͔ͨ͢ΊͷϓϥοτϑΥʔϜͷཧෆཁ
ͳͥ͜͏͍ͬͨϝϦοτ͕ ੜ·ΕΔͷ͔
ϙΠϯτLambda͕Πϕϯτۦಈ͔ͭ εςʔτϨεʹઃܭ͞Ε͍ͯΔ͜ͱ
εςʔτϨεͱ ؆୯ʹݴ͏ͱӬଓతͳσʔλΛ-BNCEBͷ෦Ͱอ࣋͠ͳ ͍ɻͦΕʹΑΓਫฏํͷεέʔϧ͕ՄೳʹͳΔ εέʔϧͷཧ"84͕શʹϑϧϚωʔδυͰߦͬͯ͘Ε Δ ͭ·Γɺ࣮ऀ͕εςʔτϨεʹ-BNCEBΛ࣮͢Δ͚ͩͰɺޙτϥϑΟοΫʹ ߹ΘͤͯΦʔτεέʔϦϯάͯ͘͠ΕΔͱ͍͏ϝϦοτΛڗडͰ͖Δ
Πϕϯτۦಈͱ Կ͔͠ΒͷΞΫγϣϯΛݩʹ-BNCEB͕ಈ࡞͢Δͱ͍͏͜ͱ ɾS3ʹϑΝΠϧ͕Ξοϓϩʔυ͞Εͨ ɾAPI GatewayʹϦΫΤετ͕͋ͬͨ ɾDynamoDBͷσʔλʹߋ৽͕͋ͬͨ ϙʔϦϯάΛߦͬͯঢ়ଶͷมԽΛ֬ೝ͢Δ͜ͱͱ ਅٯͷΈ ͭ·ΓɺΠϕϯτ͕ൃੜͨ͠ͱ͖͚ͩ-BNCEB͕ಈ͘͜ͱͰ "84ͷίϯϐϡʔςΟϯάϦιʔεͷ༻࣮ߦ୯ҐͰ࠷దԽ͞ΕΔ
͜ΕʹΑΓίετޮࣗಈతʹ࠷దԽ͞ΕΔ
ΠϕϯτۦಈͰ͋Δ͜ͱ͕ ϓϩάϥϛϯάϞσϧʹͲ͏͍ͬͨ มԽΛͨΒ͢ͷ͔
ΠϕϯτυϦϒϯΞʔΩςΫνϟ -BNCEBͱαʔϏε͕ΠϕϯτͰचͭͳ͗ͱͳͬͨ ϚΠΫϩαʔϏεͰΠϕϯτυϦϒϯͳΞʔΩςΫνϟ͕ࣗ વͱग़དྷ্͕Δ ͭ·ΓɺαʔόʔϨεͷ੍Ͳ͓Γʹ࣮Λߦ͏͜ͱͰ ࣗવͱϚΠΫϩαʔϏεͳΞʔΩςΫνϟ͕ग़དྷ্͕Δ
ΠϕϯτυϦϒϯͰ͋Δ͜ͱͰ Կ͕͏Ε͍͠ͷ͔
োੑ͕͕͋Δ
োੑ͕͕͋Δ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ
োੑ͕͕͋Δ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ োͷൃੜ ͷղܾޙʹϦΫΤετ͔ΒΓ͢ඞཁ͕͋Δ
2VFVFΛڬΜͰ͍Δͱ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF 2VFVF
2VFVFΛڬΜͰ͍Δͱ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF 2VFVF
2VFVFΛڬΜͰ͍Δͱ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF 2VFVF 2VFVFʹϦΫΤετ͕ཷ·͍ͬͯ͘
2VFVFΛڬΜͰ͍Δͱ ϩδοΫ ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF 2VFVF োͷղܾޙɺ2VFVFʹཷ·ͬͨ ϦΫΤετྲྀΕ߹ੑ͕อͨΕΔ
ΤϥʔϋϯυϦϯά͕ Γ͘͢ͳΔ
ΤϥʔϋϯυϦϯά ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF %-2 %FBE-FUUFS2VFVFͰ ΤϥʔϋϯυϦϯά
ΤϥʔϋϯυϦϯά ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF %-2 ܽଛͨ͠ σʔλ ॲཧͰ͖ͣʹϦτϥΠͷޙ %FBE-FUUFS2VFVFʹ
ৼΓ͚ΒΕΔ
ΤϥʔϋϯυϦϯά ϩδοΫ ϩδοΫ ϦΫΤετ 2VFVF %-2 ܽଛσʔλΛमਖ਼ͯ͠ ϩδοΫ͔ΒϦΧόϦ͕ ࣮ࢪͰ͖Δ
ػೳՃʹڧ͘ͳΔ
ϞϊϦγοΫͳΞʔΩςΫνϟͷ߹ ػೳՃͰιʔείʔυΛมߋ͢ΔͱӨڹൣғ ϓϩμΫτશମʹٴͿͨΊίʔυͷྔ͕ଟ͚Εଟ͍΄Ͳ ৺ཧతʹ͠ΜͲ͘ͳΔ
ΠϕϯτυϦϒϯΞʔΩςΫνϟͷ߹ 'VODUJPO 4FSWJDF 'VODUJPO 4FSWJDF 'VODUJPO &WFOU &WFOU ৽ػೳ ৽ػೳ
Πϕϯτιʔεʹରͯ͠৽ͨʹ 4VCTDSJCFSΛՃ͍ͯ͘͠ Ξϓϩʔνʹ͢Δ͜ͱͰӨڹൣ ғ͕ߜΓ͘͢ͳΔ
αʔόʔϨεʹ͢Δ͜ͱͰࣗવͱΠϕϯτυϦϒϯ ʹͳΓɺϚΠΫϩαʔϏεͷΞʔΩςΫνϟతͳ ϝϦοτΛ׆͔ͤΔΑ͏ʹͳΔ ͭ·Γ
·ͣαʔόʔϨεΛ࢝ΊΔͨΊʹ ֤ϑϧϚωʔδυαʔϏεͷಛΛ ཧղ͠Α͏
API Gateway "1*(BUFXBZ "1*Λ࡞͢ΔαʔϏε αʔόʔϨεͷੈքͰγεςϜΞΫη ε͢ΔͨΊͷʮϑϩϯτυΞʯͱͯ͠ػೳ ͢ΔαʔϏε
AppSync "QQ4ZOD (SBQI2-ͷόοΫΤϯυΛఏڙ͢ΔϑϧϚ ωʔδυαʔϏε ϑϩϯτΤϯυΞϓϦέʔγϣϯͷόοΫ Τϯυͱͯ͠ ඦສͷσόΠεͱͷؒͷϦΞϧλΠϜ αϒεΫϦϓγϣϯɺΞϓϦσʔλͷ ΦϑϥΠϯΞΫηεՄೳ
DynamoDB %ZOBNP%# ߴͰεέʔϥϒϧͳ/P42-σʔλϕʔε ਖ਼͘͠ઃܭ͢Δ͜ͱͰແݶͷεέʔϥϏϦ ςΟ͕͋Δ ༰ྔແ੍ݶɻσʔλ͕૿͑ΔʹͭΕͯউ खʹύʔςΟγϣχϯάͯ͠σʔλΛஔ ͯ͘͠ΕΔ Ϧʔδϣϯͷཧతʹࢄͨ͠Օॴʹ σʔλΛϨϓϦέʔγϣϯ͢Δ͜ͱͰՄ༻
ੑͱରোੑΛ֬อ͢Δ
S3 4 ֦ுੑͱٱੑΛ݉Ͷඋ͑ͨΦϒδΣΫτ ετϨʔδ ༰ྔແ੍ݶͰɺͷٱੑΛ ࣋ͭ ՕॴͷΞϕΠϥϏϦςΟκʔϯͰࣗಈͰϨ ϓϦέʔγϣϯ͢Δ͜ͱͰোੑͱՄ༻ ੑΛ֬อ "UIFOB4
4FMFDUΛ༻ͯ͠42-ͰΦϒ δΣΫτʹΞΫηεՄೳ
SQS 424 શϚωʔδυܕͷϝοηʔδΩϡʔΠϯ άαʔϏε Ωϡʔ͋ͨΓͷϝοηʔδແ੍ݶͰ΄ ΅ແ੍ݶͷεϧʔϓοτ େྔͷδϣϒʢϝοηʔδʣΛ-BNCEBͰ͞ ͖͍ͨ࣌ʹ424ΛڬΉͱ༗ޮ
EventBridge &WFOU#SJEHF ड͚औͬͨΠϕϯτͷ৴ϑΟϧλϦϯ άΛ௨ͯ͠ϧʔςΟϯάΛߦ͏αʔϏε %BUB%PHͳͲͷ4BB4͔ΒͷσʔλΛ"84 Ͱ-BNCEBͳͲʹϧʔςΟϯάͯ͠ॲཧͤ͞ ͨΓग़དྷΔ -BNCEBಉ࢜Λଓ͢Δʹ༗ޮ
Kinesis Streams ,JOFTJT4USFBNT ετϦʔϜσʔλΛϦΞϧλΠϜʹऩू͠ ͯॲཧ͢ΔͨΊͷαʔϏε αʔόʔϨεͷੈքͰظؒͰେྔʹ͘ ΔΞΫηε3%4ͷಉ࣌ଓͷʹର ॲ͢ΔͨΊʹྲྀྔΛௐͯ͠ཪଆͷ-BNCEB Ͱ·ͱΊͯॲཧ͢ΔϢʔεέʔε͕ଟ͍
Step Functions 4UFQ'VODUJPOT "84ͷ༷ʑͳαʔϏεΛܨ͍Ͱॲཧͷϫʔ ΫϑϩʔΛઃܭɾ࣮ߦ͢ΔαʔϏε -BNCEB୯ମͰλΠϜΞτ͢ΔΑ͏ͳॲ ཧΛϫʔΫϑϩʔʹղ࣮ͯ͠ߦ͢ΔΑ͏ ͳϩϯάϥϯχϯάͳόονॲཧʹ͍ͯ ͍Δɻ
·ͣ͜ΕΒͷϑϧϚωʔδυαʔϏεͷಛੑΛ ཧղͯ͠దࡐదॴͰ͑ΔΑ͏ʹͳΓ·͠ΐ͏ʂ ॏཁͳ͜ͱ
·ͱΊ
·ͱΊ Ϗδωεͷຊ࣭ʹूத͢ΔͨΊʹΠϯϑϥͷӡ༻ཧΛΫϥ υʹؙ͛͠·͠ΐ͏ɻͦͷͨΊͷαʔόʔϨε ΠϕϯτυϦϒϯͳΞʔΩςΫνϟΛҙࣝ͠Α͏ɻͦͷ͜ͱ Ͱมߋʹڧ͘ͳΓɺোੑΤϥʔϋϯυϦϯάʹڧ͍γ εςϜʹͳΓ·͢ ग़དྷΔݶΓϑϧϚωʔδυαʔϏεϑΝʔετͰઃܭ͠· ͠ΐ͏ɻ֤αʔϏεͷಛੑΛཧղͯ͠దࡐదॴͰ͍͚Ε ΔΑ͏ʹ͠·͠ΐ͏
ͱ͍͑ ϑϧϚωʔδυαʔϏεͷ੍༷ΠϕϯτυϦϒϯͳ ϓϩάϥϛϯάϞσϧʹ׳ΕΔ͜ͱͦΕͳΓʹֶशίετ ͕͔͔Δ͜ͱࣄ࣮
࠷ॳͷೖΓํͱͯ͠ "1*(BUFXBZ -BNCEB %ZOBNP%#ͱ͍ͬͨߏͰখنͳͱ͜Ζ͔ΒॳΊͯΈΔɻ ΤϥʔϋϯυϦϯάͳͲ͕ಛʹॏ༻Ͱͳ͍έʔεͳΒɺ -BNCEBʹॲཧΛ٧Ίͯॻ͘ͷແ͠͡Όͳ͍ ࠓͰ3%4ͷίʔϧυελʔτେ෯ʹվળ͍ͯ͠Δɻ3BJMT-BSBWFMͱ͍ͬͨ8FCΞϓϦ έʔγϣϯϑϨʔϜϫʔΫΛࡌͤͯɺීஈ͔Β͍ͬͯΔΞʔΩςΫνϟΛࡌͤସ͑ͯΈΔɻ ࠷ॳ͔ΒͷΠϕϯτυϦϒϯΞʔΩςΫνϟΛࢦ͞ͳ͍
࠷ޙʹ
গ͠ฐࣾͷϏδωεͷհΛ ͍ͤͯͩ͘͞͞
ڞܕडୗ։ൃ
ཁ͢Δʹ ϏδωεͷΰʔϧΛୡ͢ΔͨΊʹαʔόʔϨεΞϓϦέʔ γϣϯΛҰॹʹ࡞͍͖ͬͯ·͠ΐ͏ɻͦͷࢧԉΛߦ͍·͢ɻ "84αʔόʔϨεʹؔ͢Δ͜ͱͳΒɺઃܭɾ։ൃɾ1P$ɾෛ ՙࢼݧɾӡ༻ɾίετ࠷దԽͳͲ͋ΒΏΔ͜ͱ͕Մೳ
ϓϥϯʢࢀߟՁ֨ʣ νϟοτͷΈͰͷ։ൃαϙʔτ ઃܭɾΞʔΩςΫςΟϯάΛҰॹʹ࣮ࢪ Ұॹʹ։ൃΛ࣮ࢪ ෛՙࢼݧͷઃܭ͔Β࣮ࢪ ສ݄ʙ ສ݄ʙ ສ݄ʙ ສ݄ʙ
ڵຯ͕͋ΕੋඇαΠτ͔Β ͓͍߹Θ͍ͤͩ͘͞
serverless.co.jp