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
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
100
basic of data visualization and d3.js demonstration
muddydixon
0
150
study before deeplearning @YAPC2015
muddydixon
0
140
d3.js demonstration
muddydixon
0
100
data visualization @html5study
muddydixon
0
110
Time Series Prediction@JubatusCasualTalk2
muddydixon
0
95
Perl for Visualization@YAPC2013
muddydixon
0
120
Time Series Analysis by JavaScript @LLMatsuri2013
muddydixon
0
140
How to create my own Hadoop MultipleInput@HadoopCodeReading8
muddydixon
0
93
Other Decks in Technology
See All in Technology
Bet AI Day 2026丨AIによって本質に戻るシステムリスク管理
layerx
PRO
0
700
[RSJ26] NarrativeFlow: Flow-Based Vision-Language-Action Model Using Robot Velocity Fields
keio_smilab
PRO
0
140
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
300
Driving AI Adoption Using In-House GPUs to Serve Qwen
po3rin
2
400
AIエージェントを雇う前に決める5つのこと
knishioka
1
150
When Does a Local Qwen Start to Break
morshoto
0
150
データエンジニアリングワークショップ:Auto LoaderとSparkで学ぶデータパイプライン構築
databricksjapan
PRO
0
120
Guerilla InnerSource in enterprises, during the AI hype
onenashev
PRO
0
140
Bet AI Day 2026丨バクラク Autopilot、業務システムの再設計
layerx
PRO
2
990
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
1
160
リージョンの壁を越える、 ちょっと変わったAWSサービスの話
falken
PRO
0
170
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
200
Featured
See All Featured
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
270
What's in a price? How to price your products and services
michaelherold
247
13k
エンジニアに許された特別な時間の終わり
watany
108
250k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Code Review Best Practice
trishagee
74
20k
Building AI with AI
inesmontani
PRO
1
1.2k
Raft: Consensus for Rubyists
vanstee
141
7.7k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
390
Exploring anti-patterns in Rails
aemeredith
3
490
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
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