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
660
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
IoTデバイスの疑似データ送信システムにおける サーバーレスなログ処理機構の試行錯誤
ServerlessDays Fukuoka 2019
Keita Mohri
December 14, 2019
More Decks by Keita Mohri
See All by Keita Mohri
Excelを扱うRubyGemまとめ 2022
ktam1219
0
670
モクえもんのお時間です
ktam1219
0
260
在宅ワーク中だけど会社にしかGPSマルチユニットがない?でも大丈夫!そう、mockmockがあればね。
ktam1219
0
460
実写版モクえもん in Explorer ~愛・おぼえていますか~
ktam1219
0
380
エンジニアのおしごと
ktam1219
0
190
mockmockの大量のログをいい感じに捌きたい
ktam1219
0
1.2k
Goで作る大量プロセス管理機構
ktam1219
2
3.9k
わりとゴツいKubernetesハンズオン そのあとに
ktam1219
0
710
明太子とEndorseと私
ktam1219
0
790
Other Decks in Technology
See All in Technology
運用を犠牲にせずコストを制御し事業成長を支える B2B SaaS ID管理基盤におけるS3 Tableのログストレージ活用
kaminashi
1
100
コンポーネント名には何を含めるべきなのか? / what-should-be-included-in-component-names
airrnot1106
0
180
AIがAPIを書く時代に、私たちは何を設計すべきか
nagix
0
160
MCPをつなげて作る組織横断のAIエージェント基盤
tsubakimoto_s
0
360
最高のシステムプロンプトを作るためにフィードバック機能を導入した話
alchemy1115
0
220
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
1
730
変更し続けられるシステムをどう保つか — AI時代のSSoTという設計原則
kawauso
1
1.5k
文字起こし基盤の信頼性
abnoumaru
0
150
AIで楽になるはずが、なぜ疲れる?
kinopeee
0
130
A Bag-of-Documents Model for Query Specificity
dtunkelang
0
160
現場との対話から始める “作る前に問い直す”業務改善
mochico50
2
340
書籍セキュアAPIについて
riiimparm
0
380
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
580
How GitHub (no longer) Works
holman
316
150k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
350
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
280
Context Engineering - Making Every Token Count
addyosmani
9
1k
The SEO Collaboration Effect
kristinabergwall1
1
510
Faster Mobile Websites
deanohume
310
32k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
230
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
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͕ ؾʹͳΔํޙΖͷϒʔεʂ