Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
20160318 PaaS 勉強会 〜NIFTY Cloud MQTT / Timer / m...
Search
muddydixon
March 18, 2016
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20160318 PaaS 勉強会 〜NIFTY Cloud MQTT / Timer / mBaaS Script
muddydixon
March 18, 2016
More Decks by muddydixon
See All by muddydixon
企業と勉強会
muddydixon
0
110
basic of data visualization and d3.js demonstration
muddydixon
0
150
study before deeplearning @YAPC2015
muddydixon
0
140
d3.js demonstration
muddydixon
0
110
data visualization @html5study
muddydixon
0
110
Time Series Prediction@JubatusCasualTalk2
muddydixon
0
96
Perl for Visualization@YAPC2013
muddydixon
0
120
Time Series Analysis by JavaScript @LLMatsuri2013
muddydixon
0
150
How to create my own Hadoop MultipleInput@HadoopCodeReading8
muddydixon
0
93
Other Decks in Technology
See All in Technology
ファミコンでPHPを動かす / PHP on the Famicom side b
tomzoh
0
140
SDDの運用にめげずに向き合った話
sansantech
PRO
1
140
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
360
購入ドメインでの課題と取り組み
ykagano
0
150
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
160
SREでアラート疲れを 解決しよう!
kairim0
1
210
OR学会2026年秋期大会_機械学習と数理最適化の融合による、配合レシピ最適化システム開発事例
brainpadpr
0
110
継続的なAIコスト最適化
bgpat
1
240
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
0
130
"優秀な誰か"の下位互換にならないために
yut0naga1_fa
0
160
The seven pitfalls of AI (revised version)
ufried
0
290
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
210
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
So, you think you're a good person
axbom
PRO
2
2.2k
For a Future-Friendly Web
brad_frost
184
10k
Balancing Empowerment & Direction
lara
6
1.3k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
480
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
400
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Skip the Path - Find Your Career Trail
mkilby
1
250
Mobile First: as difficult as doing things right
swwweet
225
10k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Utilizing Notion as your number one productivity tool
mfonobong
4
610
Transcript
࠷ۙͷχϑςΟͷ1BB4 .255ͱ4DSJQU ୈճ1BB4ษڧձ !NVEEZEJYPO ౻େ
@muddydixon ニフティ株式会社 モバイルIoTビジネス部 データ可視化 データ前処理 時系列予測 ニューラルネットワーク ࣗݾհ 2
ࠂ 3
ΞδΣϯμ 4 NIFTY Cloud MQTT NIFTY Cloud Timer NIFTY Cloud
mBaaS Script機能 組み合わせ
5 /*'5:$MPVE.255
6 July Tech Festa 2015 http://www.slideshare.net/muddydixon/20150726-iotmqtt
.255ͱ 7 Pub/Sub メッセージ転送プロトコル 現在のバージョンは 3.1.1 http://mqtt.org/ フットプリントが小さいことが特徴 IoTで用いられる低スペックなエッジデバイ スの通信に向いている
通信コストの削減➔バッテリ消費減
.255࣮ 8 ࣮ ݴޠ ϓϩτίϧ ಛ ։ൃঢ়گ "QPMMP +BWB
F.255% &SMBOH LBGLB +BWB NPTDB /PEF EBZTBHP NPTRVJUUP $ SBCCJUNR &SMBOH TBOHPBLBOF &SMBOH ˞ TVSHFNR (PMBOH EBZTBHP WFSOF.2 &SMBOH EBZTBHP http://acro-engineer.hatenablog.com/entry/2015/06/19/120000 ʹه ※1 https://gist.github.com/voluntas/14a3421585bb08379314
.2554FSWJDF 9 ぶっちゃけどっちもMosquitto 参照実装としても使われる Will、Retain、QoS0/1/2に対応してる TLS、WebSocketにも対応 ニフティ: 認証プラグイン:これによりbroker再起動無し でユーザ追加/削除やACL追加削除が可能 独自の接続数確認/Inbound/Outboundの帯域制
࣮ ϓϩτίϧ ಛ $MPVE.255 ίϯύωͰҰൃͰىಈ ίϯύω͔Β4:4ΞΫηεՄೳ /*'5:$MPVE.255 ίϯύωͰҰൃͰىಈ ίϯύω͔Β1VC
.255ͷߏ 10 -# "1* "1* %0$,&3 .255 .255 .255 .255
"VUI"$- %0$,&3 .255 .255 .255 .255 %# 0Q
.255ͷӡ༻"1*αʔόͷߋ৽ 11 -# "1* "1* %0$,&3 .255 .255 .255 .255
"VUI"$- %0$,&3 .255 .255 .255 .255 %# 0Q ී௨ʹ %FQMPZ3FTUBSU
.255ͷӡ༻#SPLFSͷߋ৽ 12 -# "1* "1* %0$,&3 .255 .255 .255 .255
"VUI"$- %0$,&3 .255 .255 .255 .255 0Q ৽͍͠JNBHFΛ %PDLFSCVJME
.255ͷߏ 13 -# "1* "1* %0$,&3 .255 .255 .255 .255
"VUI"$- %0$,&3 .255 .255 .255 .255 %# 0Q %#ͷใΛݩʹɺ 4UPQ3FOBNF3VO ※ imageʹෆ۩߹͕ൃੜͨ࣌͠ʹΓͨ͢ΊʹRename
14 Let’s Create MQTTs!
15 /*'5:$MPVE5JNFS
16 端的に言うと、Cron登録サービス 他社はHTTP Requestメイン NIFTY Cloud Timer HTTP/Fluend/MQTT NIFTY Cloud
操作が可能 αʔϏε Ձ֨ ੍ݶ DSPOBTBTFSWJDF 'SFF 1SP݄ +PCແ੍ݶɺ"MFSN +PCແ੍ݶɺ"MFSNແ੍ݶ 4FU$SPO+PC 'SFF 4JMWFS (PME +PCɺ5JNFPVUT +PCɺ5JNPVUT +PCɺ5JNPVUT DSPOKPCPSH 'SFF /*'5:$MPVE5*NFS ԁ݄ )551'MVFOUE.255 /*'5:$MPVEૢ࡞
/*'5:$MPVE5JNFS 17 特筆すべきは、Instanceの制御ができる! 起動/停止/再起動 スナップショット作成
/*'5:$MPVE5JNFS 18 chkconfigなどで起動時になんらかの処理す るようなサーバを用意しておけば、定期的な バッチ処理を、バッチ起動時間だけ起動させ ることができる!
19 /*'5:$MPVE NPCJMFCBDLFOE4DSJQU
/*'5:$MPVE.PCJMF#BDLFOE4DSJQU 20 3/1 ベータリリース 機能的には下記みたいな機能 AWS Lambda Google Cloud Functions
͍ํ 21 アップロード:method/ステータスを選ぶ 確認する テスト実行する 実行時間を確認する
࣮ࡍͷ࣮ߦʹ 22 各種SDK対応 Android(Java) Objective-C Unity Node.js ncmb.Script .exec("GET", "testScript.js")
.then(function(res){ // ࣮ߦޙॲཧ }) .catch(function(err){ // Τϥʔॲཧ }); ncmb.Script .set({"user-agent": agent}) // ϦΫΤετϔομΛࢦఆ .data({"name": name}) // ϦΫΤετϘσΟΛࢦఆ .exec("POST", "formScript.js") .then(function(res){ // ࣮ߦޙॲཧ }) .catch(function(err){ // Τϥʔॲཧ });
4DSJQUͷߏ 23 -# 0Q %# ※֤ॴiptables/userݖݶͳͲͰ੍ݶ/ೝূͰ੍ݶ ձ ONLY Docker ͱ
Consul ͕ ͝ʹΐ͝ʹΐͯ͠·͢
ӡ༻ 24 負荷増 このセットをまるごと追加 Consulが自動でjoin Docker registratorによりAPI起動を検 知し、Consulに通知 nginxの名前解決によりLB メタ情報はDB内
Script実行imageにモロモロ手を入れてある モジュール追加imageされたimageを更新
4DSJQUͷӡ༻Ϋϥελ૿ڧ 25 -# ձ ONLY Docker ͱ Consul ͕ ͝ʹΐ͝ʹΐͯ͠·͢
੍ݶ 26 ScriptからScript呼び出しは禁止 ファイルサイズは一旦8KB モジュール追加は不可 タイムアウト30秒
27 ͜ΕΒΛΈ߹ΘͤΔ
ఆظόον 28 ىಈ➔ॲཧ➔ ࣗݾఀࢭ"1*ίʔϧ ॲཧʂ
)VCPU࡞ΕΔ ͕$SFEFOUJBM͕ɾɾɾ 29 ॲཧʂ queryparamにapikeyでできるようにたら良い かもしれない・・・
30 ·ͱΊ
/*'5:$MPVE1BB4 31 3%#.Z42- 1PTUHSF42-ͳͲ %/4ωʔϜαʔό &44ϝʔϧ -#ϩʔυόϥϯα 'JSFXBMM "VUPNBUJPO$IFG 4DSJQUY1VC4VCΛத৺ʹ
5JNFSY3%#Y$PNQVUJOHΛΈ߹ΘͤΔ͜ͱͰ ෦ͷ छʑͷΦϖϨʔγϣϯͷࣗಈԽɾޮԽΛ࣮ݱ͍ͨ͠ 4UPSBHF4తͳ .255 5JNFS 4DSJQU Ծ N#BB4 1VTI%PDVNFOU4DSJQU
32 σόΠεɺϓϥοτϑΥʔϜ͔Β69ઃܭ·Ͱ Ұ؏͓ͯ͠٬༷ͷՁΛҾ͖ग़͠ɾͰ͖Δ ͓ࣄͰ͢ɻ 8FBSFIJSJOH