$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
5000台の仮想デバイスからAWS IoTにデータをガンガン送り付ける! IoTのテスト用仮想...
Search
Keita Mohri
January 16, 2018
Technology
0
150
5000台の仮想デバイスからAWS IoTにデータをガンガン送り付ける! IoTのテスト用仮想デバイス作成サービスmockmockの舞台裏
AWS Deep Night in 福岡
Keita Mohri
January 16, 2018
Tweet
Share
More Decks by Keita Mohri
See All by Keita Mohri
Excelを扱うRubyGemまとめ 2022
ktam1219
0
620
モクえもんのお時間です
ktam1219
0
200
在宅ワーク中だけど会社にしかGPSマルチユニットがない?でも大丈夫!そう、mockmockがあればね。
ktam1219
0
420
IoTデバイスの疑似データ送信システムにおける サーバーレスなログ処理機構の試行錯誤
ktam1219
0
600
実写版モクえもん in Explorer ~愛・おぼえていますか~
ktam1219
0
340
エンジニアのおしごと
ktam1219
0
160
mockmockの大量のログをいい感じに捌きたい
ktam1219
0
1.1k
Goで作る大量プロセス管理機構
ktam1219
2
3.7k
わりとゴツいKubernetesハンズオン そのあとに
ktam1219
0
660
Other Decks in Technology
See All in Technology
re:Invent2025とAWS Builder Cards Resilience Expansionのご紹介
tsuwa61
1
130
MySQL AIとMySQL Studioを使ってみよう
ikomachi226
0
130
"'TSのAPI型安全”の対価は誰が払う?不公平なスキーマ駆動に終止符を打つハイブリッド戦略
hal_spidernight
0
220
レガシーシステム刷新における TypeSpec スキーマ駆動開発のすゝめ
tsukuha
4
890
MS Ignite 2025で発表されたFoundry IQをRecap
satodayo
3
220
MCP・A2A概要 〜Google Cloudで構築するなら〜
shukob
0
120
GitHub を組織的に使いこなすために ソニーが実践した全社展開のプラクティス
sony
21
11k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
Docker, Infraestructuras seguras y Hardening
josejuansanchez
0
140
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
16k
IaC を使いたくないけどポリシー管理をどうにかしたい
kazzpapa3
1
210
都市スケールAR制作で気をつけること
segur
0
220
Featured
See All Featured
Done Done
chrislema
186
16k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
4 Signs Your Business is Dying
shpigford
186
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
960
Writing Fast Ruby
sferik
630
62k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Statistics for Hackers
jakevdp
799
230k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Transcript
ͷԾσόΠε͔Β"84*P5ʹσʔλΛΨϯΨϯૹΓ͚Δʂ *P5ͷςετ༻ԾσόΠε࡞αʔϏε ͷཪ ໟརܒଠ
ໟརܒଠʢ͏Γ͚͍ͨʣ 'VTJD$P -UE NPDLNPDLϓϩμΫτΦʔφʔ લ৬ ༯ոͱ͔Ͱ༗໊ͳ ήʔϜձࣾ
ࣾͷ͓՛ࢠͷྲྀ௨ΛڇࣖΔ
ͬͯԿͰ͔͢ʁ
None
None
*P5ͷ
Ϟϊ ʜ Ϟϊ͕ɺ
Ϟϊ ʜ Πϯλʔωοτܦ༝Ͱɺ
αʔόʔΞϓϦ Ϟϊ ʜ αʔόʹσʔλΛૹΓɺ
αʔόʔΞϓϦ Ϟϊ ʜ ղੳͨ͠Γͯ͠
αʔόʔΞϓϦ Ϟϊ ʜ Կ͔͢Δ
ͷࣄྫ גࣜձࣾαχοΫε༷ ଠཅޫൃిॴϞχλϦϯάγεςϜ גࣜձࣾϓϦϯγϓϧ༷ ϗʔϜηΩϡϦςΟγεςϜ
*P5ͷ ͓ΘΓ
ͯ͞ɺ *P5ͷ։ൃ͠·͢
αʔόʔΞϓϦ Ϟϊ ʜ ςετ͍ͨ͠
αʔόʔΞϓϦ Ϟϊ ʜ σʔλ͕΄͍͠
αʔόʔΞϓϦ Ϟϊ ʜ ࠓ͙͢΄͍͠
αʔόʔΞϓϦ Ϟϊ ʜ ͍ΖΜͳύλʔϯͰ΄͍͠
αʔόʔΞϓϦ Ϟϊ ʜ ͨ͘͞Μ΄͍͠
Ͳ͏ͬͯ ௐୡ͠Α͏ʁ
ϦΞϧͳϞϊ͔Β ૹΒͤΑ͏
΄͍͠σʔλΛग़ͮ͠Β͍ େྔௐୡ͍͠ʜ
ͳΒࣗͰ γϛϡϨʔλʔ࡞Ζ͏
ͳ͔ͳ͔ͦ͜·Ͱ ख͕ճΒͳ͍ʜ
None
ͦ͜Ͱ
αʔόʔΞϓϦ ʜ ࢥ͍Ͳ͓ΓʹͳΔԾͷϞϊ
͍ͭͰ ΄͍͠σʔλΛ ΄͍͠ྔ͚ͩ ૹͬͯ͘ΕΔʂ
None
ࢦఆ͞ΕͨΤϯυϙΠϯτʹରͯ͠ɺ ݸମࣝผՄೳ͔ͭ ࣌ܥྻʹมԽ͢ΔσʔλΛ ಉ࣌ฒߦͰେྔʹૹ৴͢ΔγεςϜ NPDLNPDLΛٕज़ࢹͰઆ໌͢Δͱ
αʔόʔΞϓϦ ;Θͬͱͨ͠ಈ࡞Πϝʔδ σʔλૹ৴ઌͱ͔ σʔλੜఆٛͱ͔ NPDLݻ༗ઃఆͱ͔
αʔόʔΞϓϦ NPDLΛͭ͘Δ ;Θͬͱͨ͠ಈ࡞Πϝʔδ
αʔόʔΞϓϦ NPDLΛ͏͔͢͝ ;Θͬͱͨ͠ಈ࡞Πϝʔδ
Πϝʔδ͖ͭ·ͨ͠ʁ ͦΕͰຊʂ
ͷཪ
NPDLNPDLͷઃܭ NPDLͷਖ਼ମ Ϧιʔε֬อ γεςϜશମͷಈ࡞ NPDLNPDLͷ։ൃ
ςετ ຊ͓͢͠Δ͜ͱ
NPDLNPDL ͷઃܭ
NPDLNPDLͷઃܭ্ͷࢹ ༻͢ΔϦιʔεඞཁ࠷ݶʹ͍ͨ͠ ͪΖΜݪՁগͳ͍ํ͕͍͍ ӡ༻Λָʹ͍ͨ͠ ͕͠ى͖ͨ߹ʹΰϝϯφαΠ͢ΔϢʔβʔΛ࠷খݶʹ
αʔόʔʹΠϯετʔϧ͢ΔιϑτΣΞΛ࠷খݶʹ
NPDLNPDLͷઃܭ্ͷࢹ ༻͢ΔϦιʔεඞཁ࠷ݶʹ͍ͨ͠ ͪΖΜݪՁগͳ͍ํ͕͍͍ ӡ༻Λָʹ͍ͨ͠ ͕͠ى͖ͨ߹ʹΰϝϯφαΠ͢ΔϢʔβʔΛ࠷খݶʹ
αʔόʔʹΠϯετʔϧ͢ΔιϑτΣΞΛ࠷খݶʹ
͜ΕΒΛ;·͑ͯ NPDLͷਖ਼ମΛܾΊΑ͏
NPDLͷਖ਼ମ αʔόʔ ίϯςφ ϓϩηε εϨου ᩵ ࣭ૉ
NPDLͷਖ਼ମ αʔόʔ ίϯςφ ϓϩηε εϨου ᩵ ࣭ૉ ϓϩηε͕ࢮΜͩΒ૯่Εͩ͠ɺ NPDLͷΞοϓσʔτฒΈἧ͑ͳ͖Ό
·ͩ᩵ͩ͠ɺ αʔόʔʹ%PDLFSΛΠϯετʔϧ͠ͳ͖Ό ͍͘ΒͳΜͰ᩵͗͢Δ ͪΐ͏Ͳ͍͍
NPDLͷਖ਼ମ ϓϩηε εΫϦϓτݴޠ ίϯύΠϧݴޠ αʔόʔʹ࣮ߦڥΛΠϯετʔϧ͠ͳ͖Ό ୯ҰόΠφϦΛ࡞Εɺ ΄΅ૉͷαʔόʔͰ͍͚ͦ͏ʂ
͜ͷNPDLΛಈ͔͢αʔόʔͷ Ϧιʔε֬อઓུΛܾΊΑ͏
NPDLαʔόʔ NPDLαʔόʔ Ϧιʔε֬อʢ্ख͡Όͳ͍7FSʣ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ Ϧιʔε֬อʢ্ख͡Όͳ͍7FSʣ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ ϝϯς͠·͢ʂ ͓Βͤ͢ΔϢʔβʔ͕͍ͬͺ͍ʜ Ϧιʔε֬อʢ্ख͡Όͳ͍7FSʣ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ NPDLఀࢭ͠·͢ ٧ΊΕۭ͖ͦ͏ʜ NPDLఀࢭ͠·͢ Ϧιʔε֬อʢ্ख͡Όͳ͍7FSʣ
とはいえ、 誰がどのぐらいmockを起動するか 予測できないしなぁ…
それなら予測できるように すればいいじゃない!
NPDLͷಉ࣌ՔಇΛ Ϣʔβʔʹઃఆͯ͠Β͏ ͦ͏ͩɺྉۚମܥͱඥ͚Α͏ʂ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ Ϧιʔε֬อʢ্ख7FSʣ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ Ϧιʔε֬อʢ্ख7FSʣ
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ Ϧιʔε֬อʢ্ख7FSʣ ϝϯς͠·͢ʂ ͓Βͤ͢ΔϢʔβʔ͕গͳ͍
NPDLαʔόʔ NPDLαʔόʔ αʔόʔ͕ফͤͨʂ ͍ͬͯΔNPDL͞ΕͯΔʂ Ϧιʔε֬อʢ্ख7FSʣ NPDLఀࢭ͠·͢ NPDLఀࢭ͠·͢
NPDLαʔόʔ NPDLαʔόʔ NPDLαʔόʔ NPDLͰͳ͘ΩϟύγςΟʹΑΔ՝ۚͳͷͰɺ ͜Μͳঢ়ଶͰՔಇ͍ͯͯ͠௧͘ͳ͍ Ϧιʔε֬อʢ্ख7FSʣ
͜ͷϦιʔε֬อઓུͰ γεςϜશମΛಈ͔ͦ͏
Web Web Worker Worker EFMBZFE@KPC Cron ՔಈϩάΛ4ʹΞοϓϩʔυ Քಈϩάͷूܭ εςʔλεมߋཁٻ NPDLىಈཁٻ
ఆظతʹΠϯελϯεΛνΣοΫ͠ɺ ՔಈNPDL͕ͳ͚ΕΠϯελϯεΛআ͢Δ Mock Mock Mock Mock Mock NPDLىಈ γεςϜશମͷಈ࡞
Web Worker ۭ͖͕ແ͚Εɺ&$ΠϯελϯεΛ ৽ͨʹىಈ ۭ͖͕͋Δ.PDLαʔόʔΛ୳ͯ͠ ىಈτϦΨʔϑΝΠϧΛஔ͘ ىಈτϦΨʔϑΝΠϧΛݕͯ͠NPDLΛىಈ ͦͷࡍɺ4͔ΒNPDLͷઃఆϑΝΠϧΛड͚औΔ Mock ۭ
Mock ຬ Mock ຬ Mock ຬ Mock ຬ NPDLͷىಈ
5PXFSϓϩηε NPDLͷىಈऴྃɺϩάऩूΛ࢘Δཧϓϩηε &$ىಈ࣌ʹ4͔ΒόΠφϦΛऔಘ NPDLαʔόʔͷத Tower Mock Mock Mock Worker Mock
Trigger Files .PDLϓϩηε NPDLͷׂΛ͢Δϓϩηε 5PXFS͔Βىಈ͞ΕΔͱ͖ʹɺ ·ͩແ͚Ε 4͔Β ɹόΠφϦΛऔಘ ىಈ࣌ʹ4͔ΒઃఆϑΝΠϧΛऔಘ͠ɺͦΕʹԊͬͯ ɹݻ༗ͷಈ࡞Λ࣮ݱ ૄ݁߹ ඇಉظ ϝϯςφϯεϑϦʔ τϦΨʔϑΝΠϧ "NB[PO.2
NPDLNPDL ͷ։ൃ
NPDLNPDLͷ։ൃ্ͷΈ ϩʔΧϧͰͷ݁߹ςετ͕ ͱʹ͔͘Γʹ͍͘ʂ
ͦ͜ʹݱΕͨٹੈओʂ
ͦ͜ʹݱΕͨٹੈओʂ AmazonLinuxの イメージもあるよ!
EFMBZFE@KPC ՔಈϩάΛ.*/*0ʹΞοϓϩʔυ Քಈϩάͷूܭ εςʔλεมߋཁٻ NPDLىಈཁٻ ఆظతʹΠϯελϯεΛνΣοΫ͠ɺ ՔಈNPDL͕ͳ͚ΕΠϯελϯεΛআ͢Δ NPDLىಈ %PDLFSͰ݁߹ςετ WEB
Worker Cron Mock Aggregator CloudStorage
NPDLNPDLͷઃܭ NPDLͷਖ਼ମ Ϧιʔε֬อ γεςϜશମͷಈ࡞ NPDLNPDLͷ։ൃ
σόοά ຊͷ·ͱΊ ָ͍ͯͬ͠ͺ͍Ք͍͗ͨ ୯ҰόΠφϦʹΑΔϓϩηε ΩϟύγςΟ ϐλΰϥεΠον ͕ΜͬͯΔ %PDLFSͰϐλΰϥεΠον
5IBOLZPV NPDLNPDL ݕࡧ 無料枠もあるので使ってみてね!