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
IoTデバイスの疑似データ送信システムにおける サーバーレスなログ処理機構の試行錯誤
Search
Keita Mohri
December 14, 2019
Technology
0
540
IoTデバイスの疑似データ送信システムにおける サーバーレスなログ処理機構の試行錯誤
ServerlessDays Fukuoka 2019
Keita Mohri
December 14, 2019
Tweet
Share
More Decks by Keita Mohri
See All by Keita Mohri
Excelを扱うRubyGemまとめ 2022
ktam1219
0
550
モクえもんのお時間です
ktam1219
0
160
在宅ワーク中だけど会社にしかGPSマルチユニットがない?でも大丈夫!そう、mockmockがあればね。
ktam1219
0
380
実写版モクえもん in Explorer ~愛・おぼえていますか~
ktam1219
0
290
エンジニアのおしごと
ktam1219
0
120
mockmockの大量のログをいい感じに捌きたい
ktam1219
0
970
Goで作る大量プロセス管理機構
ktam1219
2
3.3k
わりとゴツいKubernetesハンズオン そのあとに
ktam1219
0
590
明太子とEndorseと私
ktam1219
0
630
Other Decks in Technology
See All in Technology
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
220
フロントエンド設計にモブ設計を導入してみた / 20241212_cloudsign_TechFrontMeetup
bengo4com
0
1.9k
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
1
180
KubeCon NA 2024 Recap: How to Move from Ingress to Gateway API with Minimal Hassle
ysakotch
0
200
継続的にアウトカムを生み出し ビジネスにつなげる、 戦略と運営に対するタイミーのQUEST(探求)
zigorou
0
530
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
lana2548
0
230
.NET 9 のパフォーマンス改善
nenonaninu
0
830
生成AIのガバナンスの全体像と現実解
fnifni
1
180
kargoの魅力について伝える
magisystem0408
0
200
小学3年生夏休みの自由研究「夏休みに Copilot で遊んでみた」
taichinakamura
0
150
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
re:Invent 2024 Innovation Talks(NET201)で語られた大切なこと
shotashiratori
0
310
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
33
1.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
VelocityConf: Rendering Performance Case Studies
addyosmani
326
24k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
Mobile First: as difficult as doing things right
swwweet
222
9k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
GitHub's CSS Performance
jonrohan
1030
460k
Transcript
*P5σόΠεͷٙࣅσʔλૹ৴γεςϜʹ͓͚Δ αʔόʔϨεͳϩάॲཧػߏͷࢼߦࡨޡ 4FSWFSMFTT%BZT'VLVPLB 4BU ໟརܒଠ
‣ 'VTJD$P -UE ‣ ϓϦϯγύϧΤϯδχΞNPDLNPDLνʔϜϦʔμʔ ‣ "84 403"$0. (P
3VCZ ‣ ࣌ؒͰશཧղʂΘΓͱΰπ͍,VCFSOFUFTϋϯζΦϯʂʂ w IUUQTRJJUBDPN,UB.JUFNTDFDEEGEE ໟརܒଠʢ͏Γ͚͍ͨʣ
*P5σόΠεͷٙࣅσʔλૹ৴γεςϜʹ͓͚Δ αʔόʔϨεͳϩάॲཧػߏͷࢼߦࡨޡ
*P5։ൃऀ͚ͷٙࣅσʔλੜɾૹ৴αʔϏε NPDLNPDL 8FCίϯιʔϧ͔Β੍ޚ Backend ٙࣅσʔλ ԾσόΠε NPDL ࣮σόΠεͳ͠Ͱ #BDLFOEͷ
ςετෛՙࢼݧ͕ ࣮ࢪՄೳʹ
ը໘Πϝʔδ ࢥ͍௨ΓͷϑΥʔϚοτͰ+40/σʔλΛੜ ԾσόΠεͷεςʔλεͱͦͷมԽΛҙʹઃఆ ͞·͟·ͳ࣌ܥྻσʔλੜػೳ
*P5σόΠεͷٙࣅσʔλૹ৴γεςϜʹ͓͚Δ αʔόʔϨεͳϩάॲཧػߏͷࢼߦࡨޡ
γεςϜશମ૾
PublicSubnet Web Web WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ PrivateSubnet RDS
PublicSubnet PrivateSubnet Web Web Worker Worker WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞
mockૢ࡞JobΛ ൃߦ PrivateSubnet RDS
PublicSubnet PrivateSubnet S3 Bucket (Lot) S3 Bucket (Binary) Web
Web Worker Worker mockૢ࡞JobΛ ൃߦ ઃఆϑΝΠϧΛ Ξοϓϩʔυ mockαʔόʔʹ ૢ࡞ࢦࣔ PrivateSubnet Mock Mock Mock Mock Mock Mock WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ PrivateSubnet RDS
PublicSubnet PrivateSubnet S3 Bucket (Lot) S3 Bucket (Binary) Web
Web Worker Worker mockૢ࡞JobΛ ൃߦ ઃఆϑΝΠϧΛ Ξοϓϩʔυ mockαʔόʔʹ ૢ࡞ࢦࣔ ઃఆϑΝΠϧ όΠφϦΛDL PrivateSubnet Mock Mock Mock Mock Mock Mock WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ PrivateSubnet RDS
PublicSubnet PrivateSubnet S3 Bucket (Lot) S3 Bucket (Binary) Web
Web Worker Worker mockૢ࡞JobΛ ൃߦ ઃఆϑΝΠϧΛ Ξοϓϩʔυ mockαʔόʔʹ ૢ࡞ࢦࣔ ઃఆϑΝΠϧ όΠφϦΛDL PrivateSubnet Mock Mock Mock Mock Mock Mock WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ mockϓϩηε ىಈ PrivateSubnet RDS
PublicSubnet PrivateSubnet S3 Bucket (Lot) S3 Bucket (Binary) Web
Web Worker Worker mockૢ࡞JobΛ ൃߦ ઃఆϑΝΠϧΛ Ξοϓϩʔυ mockαʔόʔʹ ૢ࡞ࢦࣔ ઃఆϑΝΠϧ όΠφϦΛDL PrivateSubnet Mock Mock Mock Mock Mock Mock mockϓϩηε ىಈ WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ PrivateSubnet mockՔಇঢ়گ Λ௨ RDS ϩάॲཧػߏ ʁ Log Storage ϩάૹ৴ ϩάอଘ
PublicSubnet PrivateSubnet S3 Bucket (Lot) S3 Bucket (Binary) Web
Web Worker Worker mockૢ࡞JobΛ ൃߦ ઃఆϑΝΠϧΛ Ξοϓϩʔυ mockαʔόʔʹ ૢ࡞ࢦࣔ ઃఆϑΝΠϧ όΠφϦΛDL PrivateSubnet Mock Mock Mock Mock Mock Mock mockϓϩηε ىಈ WebίϯιʔϧͰ ಈ࡞Λઃఆ mockΛૢ࡞ PrivateSubnet mockՔಇঢ়گ Λ௨ RDS ϩάॲཧػߏ ʁ Log Storage ϩάૹ৴ ϩάอଘ Mock Mock [ mock ] GoόΠφϦ͔Βཱͯͨ ԾσόΠεϓϩηε [ tower ] GoόΠφϦ͔Βཱͯͨ mockཧϓϩηε
ϩάॲཧػߏ
<*/165> ֤NPDLϓϩηε͕ ٙࣅσʔλૹ৴ͷͨͼʹ ϩάΛੜɾૹ৴ <065165> Կ͔͠ΒͷετϨʔδʹ ੜϩάΛอଘ <065165> ϩάΛղੳͯ͠
NPDLͷՔಇঢ়ଶΛ௨ PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock Mock ϩάॲཧػߏ ʁ Log Storage
ը໘ͰݟΔͱʜ <065165>NPDLͷՔಇঢ়ଶΛදࣔ <065165>อଘͨ͠ϩάΛදࣔάϥϑදࣔ
*P5σόΠεͷٙࣅσʔλૹ৴γεςϜʹ͓͚Δ αʔόʔϨεͳϩάॲཧػߏͷࢼߦࡨޡ
ϙΠϯτ
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ NPDLͷσʔλૹ৴ִؒ ࠷খͰඵ
ૹ৴ͨٙ͠ࣅσʔλͷ αΠζʹΑͬͯ ϩάͷαΠζେ͖͘มಈ ,#ະຬdे,# PrivateSubnet Worker Worker PrivateSubnet Mock
Mock Mock Mock Mock Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ NPDLͷσʔλૹ৴ִؒ ࠷খͰඵ
ૹ৴ͨٙ͠ࣅσʔλͷ αΠζʹΑͬͯ ϩάͷαΠζେ͖͘มಈ ,#ະຬdे,# NPDLͷՔಇঢ়ଶΛ ϦΞϧλΠϜʹө͍ͨ͠ PrivateSubnet Worker Worker
PrivateSubnet Mock Mock Mock Mock Mock Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ NPDLͷσʔλૹ৴ִؒ ࠷খͰඵ
ૹ৴ͨٙ͠ࣅσʔλͷ αΠζʹΑͬͯ ϩάͷαΠζେ͖͘มಈ ,#ະຬdे,# NPDLͷՔಇঢ়ଶΛ ϦΞϧλΠϜʹө͍ͨ͠ PrivateSubnet Worker Worker
PrivateSubnet Mock Mock Mock Mock Mock Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ NPDLͷσʔλૹ৴ִؒ ࠷খͰඵ Ұఆظ͕ؒܦաͨ͠Β ϩάΛফ͍ͨ͠
ૹ৴ͨٙ͠ࣅσʔλͷ αΠζʹΑͬͯ ϩάͷαΠζେ͖͘มಈ ,#ະຬdे,# NPDLͷՔಇʹΑͬͯ අ༻εέʔϧ͍ͤͨ͞ NPDLͷՔಇঢ়ଶΛ ϦΞϧλΠϜʹө͍ͨ͠ PrivateSubnet
Worker Worker PrivateSubnet Mock Mock Mock Mock Mock Mock ϩάॲཧػߏ ʁ Log Storage NPDLͷՔಇ ࠷େͰສ Քಇ͔Β ͍͖ͳΓສʹͳΔ͜ͱ NPDLͷσʔλૹ৴ִؒ ࠷খͰඵ Ұఆظ͕ؒܦաͨ͠Β ϩάΛফ͍ͨ͠
͋ͳͨͳΒͲ͏͢Δʁ
/PX-PBEJOH powerd by ʮ࣮ࣸ൛ϞΫ͑ΜJO&YQMPSFSdѪɾ͓΅͍͑ͯ·͔͢dʯ https://speakerdeck.com/ktam1219/shi-xie-ban-mokuemon-in-explorer-ai-oboeteimasuka
ୈ̍ੈ
‣ NPDLαʔόʔʹԿΠϯετʔϧ͠ͳ͍ ࢹͱ͔ΞοϓάϨʔυͱ͔͕໘ ‣ ϩάॲཧػߏʹωοτϫʔΫଳҬΛۃྗׂ͔ͳ͍ ϝΠϯػೳͷٙࣅσʔλૹ৴ʹ͍͍ͨ ୈੈํ
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock S3 Bucket S3 Bucket Lambda ૹ৴ຖʹϩάΛ ॻ͖ग़͢ 1ຖʹશmockͷ ϩάΛूܭ S3ͷputͰ Lambda͕ൃՐ mockͷঢ়ଶΛ HTTPͰ͑Δ mockຖʹϩάΛ όϥͯ͠อଘ
ୈੈ݁Ռ (PPE #BE ‣ NPDLαʔόʔʹԿΠϯετʔϧ ͠ͳ͍͍ͯ͘ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫଳ Ҭ͕࠷ݶ
‣ ϩάͷୡʹ͕͔͔࣌ؒΔ ‣ ϩάͷूղॲཧ͕͋ΔͨΊ ϩάͷαΠζ͕େ͖͘Ͱ͖ͳ͍ ‣ ҟৗܥ·Ͱߟ͑ΔͱUPXFSͰͷϩά ूॲཧ͕ෳࡶʹͳΔ ‣ 4͔ΒظؒࢦఆͰϩάΛऔΓʹ͍͘ ‣ XPSLFSʹNPDLঢ়ଶΛ͑Δͱ͜ Ζ͕ಉظత w ࣦഊ࣌ͷ࠶ૹॲཧΛͤͶ
ୈੈ݁Ռ (PPE #BE ‣ NPDLαʔόʔʹԿΠϯετʔϧ ͠ͳ͍͍ͯ͘ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫଳ Ҭ͕࠷ݶ
‣ ϩάͷୡʹ͕͔͔࣌ؒΔ ‣ ϩάͷूղॲཧ͕͋ΔͨΊ ϩάͷαΠζ͕େ͖͘Ͱ͖ͳ͍ ‣ ҟৗܥ·Ͱߟ͑ΔͱUPXFSͰͷϩά ूॲཧ͕ෳࡶʹͳΔ ‣ 4͔ΒظؒࢦఆͰϩάΛऔΓʹ͍͘ ‣ XPSLFSʹNPDLঢ়ଶΛ͑Δͱ͜ Ζ͕ಉظత w ࣦഊ࣌ͷ࠶ૹॲཧΛͤͶ ͳΜ͔μα͍ʂ
/PX-PBEJOH
ୈ̎ੈ
‣ NPDLαʔόʔʹԿΠϯετʔϧ͠ͳ͍ ͬͺΓࢹͱ͔ΞοϓάϨʔυͱ͔͕໘ ‣ ϩάॲཧػߏʹωοτϫʔΫଳҬΛ͋Δఔׂ͜͏ Γͳ͔ͬͨΒ͓ۚͷྗʹཔͬͯੜ͖͍ͯ͜͏ ‣ 4͔Β%ZOBNP%#ʹม͑ͯΈΑ͏
%ZOBNP%#ͳΒ֤NPDL͔ΒϩάΛೖΕͯେৎͦ͏ ΫΤϦ͕ॻ͚ΔͷͰอଘͨ͠ϩά͕औಘ͍͢͠ ͰΩϟύγςΟͷཧ͕໘ʜ ୈ̎ੈํ
%ZOBNP%#0O%FNBOEരʂ !SF*OWFOU
%ZOBNP%#0O%FNBOEരʂ
ࢲͷͨΊͷΞοϓσʔτ͔
‣ ैདྷͷ%ZOBNP%#ͰɺΩϟύγςΟϢχοτ ಡΈॻ͖ੑೳ Λ ͋Β͔͡Ίઃఆ͓ͯ͘͠ඞཁ͕͋ͬͨ 8$6 8SJUF$BQBDJUZ6OJU
3$6 3FBE$BQBDJUZ6OJU ‣ ΩϟύγςΟϢχοτͷΦʔτεέʔϦϯάઃఆͰ͖Δ͕ɺ ॠؒతʹεέʔϧ͢ΔΘ͚Ͱͳ͍ ऑ͔͔Δ ‣ 0O%FNBOEϞʔυͰɺͬͨΩϟύγςΟϢχοτʹରͯ͠ ैྔ՝ۚͯ͘͠ΕΔʂ ͋Β͔͡ΊΩϟύγςΟϢχοτΛઃఆ͓ͯ͘͠ඞཁ͕ͳ͍ʂ %ZOBNP%#0O%FNBOEരʂ
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock DynamoDB (On-Demand) Lambda SNS SQS ֤mock͕ DynamoDBʹϩάΛ ॻ͖ࠐΉ Worker͔ΒσʔλΛ औΓʹߦ͘͜ͱͰ ඇಉظʹσʔλΛߋ৽ DynamoDB Streamsʹ ΑͬͯLambdaΛൃՐ ੜϩάDynamoDBΛࢀর TTLͰҰఆظؒܦաޙʹআ
ୈੈ݁Ռ (PPE #BE ‣ NPDLՔಇঢ়ଶͷୡ͕΄΅ϦΞϧ λΠϜ ‣ ػߏ͕ൺֱత؆୯ʹͳͬͨ ‣
ϩάͷूղॲཧ͕ͳ͘ͳͬͨ ͷͰɺେ͖ΊͷϩάૹΕΔΑ͏ʹ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫ ଳҬ͕େ͖͘ͳͬͨ ‣ %ZOBNP%#0O%FNBOE ΰϦΰϦ͏ͱߴ͍ʜ
ୈੈ݁Ռ (PPE #BE ‣ NPDLՔಇঢ়ଶͷୡ͕΄΅ϦΞϧ λΠϜ ‣ ػߏ͕ൺֱత؆୯ʹͳͬͨ ‣
ϩάͷूղॲཧ͕ͳ͘ͳͬͨ ͷͰɺେ͖ΊͷϩάૹΕΔΑ͏ʹ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫ ଳҬ͕େ͖͘ͳͬͨ ‣ %ZOBNP%#0O%FNBOE ΰϦΰϦ͏ͱߴ͍ʜ #JLLVSJ ‣ ࢥͬͨҎ্ʹॠؒతʹεέʔϧ͢Δ w Ͱ<8$6>Ͱ0,
/PX-PBEJOH
ୈ̏ੈ
‣ NPDLαʔόʔʹԿΠϯετʔϧ͠ͳ͍ ͬͺΓࢹͱ͔ΞοϓάϨʔυͱ͔͕໘ ‣ ϩάॲཧػߏʹωοτϫʔΫଳҬΛ͋Δఔׂ͜͏ Γͳ͔ͬͨΒ͓ۚͷྗʹཔͬͯੜ͖͍ͯ͜͏ ‣ %ZOBNP%#0O%FNBOE٫͠Α͏
͓ۚʹݶք͕͋ΔΑͶ ୈ̏ੈํ
‣ ΩϟύγςΟ͕ৗʹେ͖͘มಈ͢Δ߹༗ޮ ‣ NPDLNPDLͰมಈ͢Δ͕ɺ֤NPDL͕ॻ͖ࠐΉྔҰఆ ؤுΕ1SPWJTJPOFE͕͑ΔͷͰʁ ΰϦΰϦ%ZOBNP%#0O%FNBOE ͣͬ͠ͱҰఆͰ͍ଓ͚ͨΒʜ 0O%FNBOE
1SPWJTJPOFE ར༻͍ͯ͠ΔΩϟύγςΟͷഒΛ ϓϩϏδϣϯ͍ͯ͠Δঢ়ଶ ʹ
ࢲͷͨΊͷΞοϓσʔτ ͡Όͳ͔͔ͬͨ
‣ ىಈ࣌ʹඞཁͳΩϟύγςΟΛ༧ଌͰ͖Ε࣮ݱ͢Δ ૹ৴σʔλαΠζʹΑͬͯϩάͷαΠζ͕େ͖͘มಈ ૹ৴σʔλαΠζΛ༧ଌ͢Δͷࠔ %ZOBNP%#0O%FNBOE͔Βͷ٫
ը໘ͰݟΔͱʜʢ࠶ܝʣ <065165>NPDLͷՔಇঢ়ଶΛදࣔ <065165>อଘͨ͠ϩάΛදࣔάϥϑදࣔ
ը໘ͰݟΔͱʜʢ࠶ܝʣ <065165>NPDLͷՔಇঢ়ଶΛදࣔ <065165>อଘͨ͠ϩάΛදࣔάϥϑදࣔ ૹ৴σʔλͷใΛ ͍ͬͯΔͷ͚ͩ͜͜ ผͷػߏͰอଘͯ͠ΈΑ͏
‣ ෳͷαʔόʔ͔ΒϚϯτͰ͖Δڞ༗ετϨʔδ ωοτϫʔΫϑΝΠϧγεςϜͱͯ͠Ϛϯτ ‣ ༰ྔ͕ࣗಈͰεέʔϧ͢Δ ‣ εϧʔϓοτ੍͕ޚՄೳ όʔετεϧʔϓοτϑΝΠϧγεςϜͷαΠζʹ߹Θͤͯεέʔϧ
ϓϩϏδϣϯυεϧʔϓοτεϧʔϓοτΛઃఆ ‣ ෳͷ";͔ΒΞΫηεՄೳ "NB[PO&MBTUJD'JMF4ZTUFN &'4
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock DynamoDB (Provisioned) Lambda SNS SQS DynamoDBʹ mockঢ়ଶߋ৽༻ͷϩά EFSʹશͳϩάΛ ॻ͖ࠐΉ ΩϟύγςΟ mockىಈ࣌ʹௐ EFS
‣ ΩϟύγςΟ૿͢ํʹճ੍ݶ͕ແ͍͚ͲɺݮΒ͢ํ ʹճ੍ݶ͕͋Δ NPDLͷՔಇ୯Ґ͝ͱʹඞཁͳ8$6Λࢉग़ͯ͠Ճ DSPOͰ࣌ؒຖʹՔಇ୯Ґͷ8$6ͷ߹ܭΛग़ͯ͠ద༻ %ZOBNP%#ͷ8$6ߋ৽
ୈੈ݁Ռ (PPE #BE ‣ %ZOBNP%#ͷඅ༻͕࠷దԽ͞Εͨ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫ ଳҬ͕ͬͱେ͖͘ͳͬͨ ‣
Ұఆ࣌ؒܦաޙʹ&'4͔ΒσʔλΛ আ͢Δͷ͕खؒ ‣ &'4*0Λ૿ͦ͏ͱ͢ΔͱͦΕͳ Γʹඅ༻͕ʜ
ୈੈ݁Ռ (PPE #BE ‣ %ZOBNP%#ͷඅ༻͕࠷దԽ͞Εͨ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫ ଳҬ͕ͬͱେ͖͘ͳͬͨ ‣
Ұఆ࣌ؒܦաޙʹ&'4͔ΒσʔλΛ আ͢Δͷ͕खؒ ‣ &'4*0Λ૿ͦ͏ͱ͢ΔͱͦΕͳ Γʹඅ༻͕ʜ :BSBLBTIJ ‣ ςετڥͰ8$6Βͣߴֹٻ
/PX-PBEJOH
ୈ̐ੈ
‣ NPDLαʔόʔʹԿ͔ΛΠϯετʔϧ͢ΔͷΛڐ༰͠Α͏ શମతʹ͜ͳΕ͖ͯͨͷͰɺࠓͳΒ͍͚Δؾ͕͢Δ ‣ ࠓͦ͜,JOFTJTͱ͖߹͓͏ γϟʔυ͕ෳʹͳΔͱͪΐͬͱେม͚ͩͲ ‣ ૣ͘&'4͔Β٫͍ͨ͠ؾ࣋ͪ
ωοτϫʔΫଳҬͷϘτϧωοΫʹͳΓ͕ͪ ͓ۚͰղܾͰ͖Δ͚Ͳ͓ۚେࣄ ϩάͷͨΊʹNPDL͔ΒϲॴʹσʔλΛૹ͍ͬͯΔͷ͔ͬ͜ѱ͍ ୈ̐ੈํ
‣ ,JOFTJT%BUB4USFBNTʹσʔλΛ͛ࠐΉϥΠϒϥϦ ‣ ͋ΔఔσʔλΛ·ͱΊͯૹͬͯ͘ΕΔ γϟʔυ͋ͨΓͷॻ͖ࠐΈ੍ݶΛΫϦΞ͘͢͠ͳΔ w .#ඵ w ϨίʔυඵίϨ
ωοτϫʔΫଳҬతʹ͞͠Ί -BNCEB࣮ߦճతʹ͞͠Ί ‣ ૹ৴͕ඇಉظʹͳΔ ‣ qVFOUEͱΈ߹Θͤͯ͏ͱΓ͍͢ BXTqVFOUQMVHJOLJOFTJT "NB[PO,JOFTJT1SPEVDFS-JCSBSZ ,1-
‣ ͦͷ໊ͷ௨ΓϩάΛཧͯ͘͠ΕΔͭ $MPVE8BUDI-PHT*OTJHIUTͰϩάσʔλΛੳ͢Δ͜ͱՄೳ อଘظؒઃఆͰ͖Δʂ ‣ ୈੈͷͱ͖ʹҰճݕ౼͚ͯͨ͠Ͳ ੍ݶ༰Λצҧ͍͍ͯͯ͠Ϙπʹʜʂ ‣
ϩάೖසͷ੍ݶ؇͕ඞཁ σϑΥϧτͰ݅ඵͷτϥϯβΫγϣϯ BQOPSUIFBTU "NB[PO$MPVE8BUDI-PHT
PrivateSubnet Worker Worker PrivateSubnet Mock Mock Mock Mock Mock
Mock Lambda SNS SQS Kinesis Data Streams KPLͰσʔλΛ ·ͱΊͯૹ৴ CloudWatch Logs ΞΧϯτ͝ͱʹLogGroup mock͝ͱʹLogStream
ୈੈ݁Ռ (PPE #BE ‣ &'4͔Βͷ٫ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫଳ Ҭ͕খ͘͞ͳͬͨ
ୈੈ݁Ռ (PPE #BE ‣ &'4͔Βͷ٫ ‣ ϩάॲཧػߏʹׂ͘ωοτϫʔΫଳ Ҭ͕খ͘͞ͳͬͨ *LLB
‣ ͍ͭʹNPDLαʔόʔʹΠϯετʔ ϧͨ͠ ‣ ,1-ͰϩάΛूͯ͠ૹΔͨΊɺ NPDLঢ়ଶͷୡϥά͕ŧŔŕŪũƄſ
/PX-PBEJOH
ୈੈʁ
ظͷ৽"NB[PO5JNFTUSFBN !SF*OWFOU
‣ ߴͰεέʔϥϒϧͳશϚωʔδυܕͷ࣌ܥྻσʔλϕʔε ॻ͖ࠐΈΫΤϦετϨʔδʹΑΔैྔ՝ۚ *0ͷੑೳ ੍ݶ ·ͩग़͍ͯͳ͍ʜ σʔλอଘظ͕ؒઃఆͰ͖ΔͷͰআॲཧඞཁͳ͍ʁ
ظͷ৽"NB[PO5JNFTUSFBN
SF*OWFOU ऴΘͬͨࠓʂ
/PX-PBEJOH
·ͱΊ
‣ େྔͷNPDL͔Βൃੜ͢ΔϩάΛॲཧ͢ΔػߏͷมભΛݟ͖ͯͨ ‣ ͳʹ͛ʹશ෦TFSWFSMFTT අ༻NPDLͷՔಇʹԠͯ͡εέʔϧ͢Δ ෦͕ଟ͍ ‣ ࣗͰ࡞Δͷ͕͍͠ػߏ͕ͨ͘͞Μ༻ҙ͞Ε͍ͯͯ
ؾܰʹࢼߦࡨޡ͕Ͱ͖ΔͷΫϥυͳΒͰ ύζϧͷΑ͏ʹ͍Ζ͍ΖΈ߹Θ͍ͤͯ͘ͷָ͍͠ʂ ‣ େنͳσʔλΛѻ͏ͱ͖ʹ࠷ޙʹϘτϧωοΫʹͳΔͷͬͺΓ*0 ·ͱΊ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ NPDLNPDL͕ ؾʹͳΔํޙΖͷϒʔεʂ