Das Internet der Dinge (IoT) und Maschine-zu-Maschine Kommunikation (M2M) ist momentan in aller Munde. Studien zeigen das es bis 2020 50 Milliarden Geräte sein werden, die über das Internet miteinander kommunizieren und jede Sekunde kommen 80 neue Geräte hinzu. Momentan dominierende Protokolle wie HTTP/REST sind nur bedingt geeignet, um die Anforderungen abzudecken. Herausforderungen sind zum Beispiel das Senden von Nachrichten von einem Gerät zu vielen, Skalierung der Anzahl an Geräte, Push Notifications und Sicherstellung der korrekten Übermittlung. Das Publish/Subscribe-Protokoll MQTT erfüllt diese Anforderungen und wurde für mobile Geräte entwickelt. Es wird beispielsweise von Facebook für den Messenger eingesetzt. Dieser Vortrag gibt eine Einführung in MQTT sowie die Implementierung Eclipse Paho und zeigt anhand von Beispielquellcode und einer Livedemo, welche Probleme man damit lösen kann. - See more at: http://www.developer-week.de/History/2014/Programm/Veranstaltung/(event)/14178#sthash.ioXw2aoi.dpuf
38. MQTT features Last Will and Testament
B
Connect
LWT
device123/status: „offline“
B
dropped
device123/status: „offline“
39. MQTT features w/o Retained Messages
B
device1/temp: „23,0“
device1
every 5 min
device2
device1/temp: „23,0“
Delay <= 5min
40. MQTT features Retained Messages
B
device1/temp: „23,0“ R
device1
every 5 min
device2
device1/temp: „23,0“ R
No Delay!
stores msg
per topic
41. MQTT features Persistent Sessions
B
Connect
Subscribe
device/+/status
device/12/status: „1“
1st
B
Re-Connect
device/12/status: „1“
2nd
42. MQTT-SN Overview
Gateway MQTT-Broker
MQTT-SN MQTT / -SN
• UDP instead of TCP
• Topic is just an ID (Preregister/Register)
• Sleeping Clients
• Different types of Gateways
• Discovery Mechanisms
Devices
B
47. MQTT Broker HiveMQ
High performance broker
Open Plugin System for Java Clustering
Bridging Scalable to > 100.000
connections
Native Websocket support