SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
LIGHTWEIGHT AND SCALABLE IOT
MESSAGING WITH MQTT
Dominik Obermaier | CTO @ HiveMQ
Numberofusersinmillions
Numberofusersinmillions
PEOPLE ON THE INTERNET
Source IHS © 2016 IHS
DEVICES ON THE INTERNET
Key Industry Trend:
IoT & Connectivity
Introduction
‱ HiveMQ CTO
‱ Strong background in distributed
and large scale systems
architecture
‱ OASIS MQTT TC Member
‱ Author of “The Technical
Foundations of IoT”
‱ Conference Speaker
‱ Program committee member for
German and international IoT
conferences
Dominik
Obermaier
@dobermai
Web Technologies are
NOT
suitable for IoT
IOT CHALLENGES
➀ Unreliable communication channels (e.g.
mobile)
➀ Constrained Devices
➀ Low Bandwidth and High Latency
environments
➀ Bi-directional communication required
➀ Security
➀ Instantaneous data exchange
HTTP?
➀ Most popular web protocol
➀ Designed for the human web
➀ Request / Response based
➀ Document centric
➀ No Quality of service
➀ Stateless
➀ Text based (binary with HTTP/2)
➀ No Push capabilities
➀ Not possible to get notiïŹed when a client
is ofïŹ‚ine
CoAP
WHAT IS MQTT?
➀ IoT Messaging Protocol
➀ Minimal Overhead
➀ Publish / Subscribe
➀ Easy
➀ Binary
➀ Data Agnostic
➀ Designed for reliable
communication over unreliable
channels
USE CASES
➀ Push Communication
➀ Unreliable communication
channels (e.g. mobile)
➀ Constrained Devices
➀ Low Bandwidth and High Latency
environments
➀ Communication from backend to
IoT device
➀ Lightweight backen communication
PUBLISH / SUBSCRIBE
Scalable communication paradigm for the IoT
PUBLISH / SUBSCRIBE EXPLAINED
MQTT PUB/SUB ADVANTAGES
➀ Space decoupling
➀ Time Decoupling
➀ Synchronization Decoupling
➀ Message ïŹltering based on
subjects (topics)
➀ Push communication
➀ Dynamic Topics
PROTOCOL DETAILS
➀ MQTT requires TCP/IP
➀ IPv4 and IPv6 supported
➀ Also works over websockets
➀ Persistent TCP connections
➀ Heartbeat mechanism
➀ Clean & Persistent Sessions
➀ QoS levels for message delivery
guarantees
➀ TLS in the mix for professional
deployments
MQTT
TCP
IP
5-7
ISO/OSI
Layer
4
ISO/OSI
Layer
3
ISO/OSI
Layer
SCALING MQTT
The journey to millions of devices
CHALLENGE 1:
HUGE AMOUNT OF TCP CONNECTIONS
➀ MQTT uses persistent
TCP connections
➀ Number of concurrent
TCP connections
limited (hard to scale >
1-2 Million on a single
machine)
➀ “Reconnect Storms”
CHALLENGE 2:
SECURITY
➀ TLS for secure communication
➀ TLS handshake is resource
intensive
➀ Brokers accessible over the
Internet
➀ Scalable backend systems for
authentication & authorization
needed
CHALLENGE 3:
MQTT IS STATEFUL
➀ MQTT allows sessions
➀ Subscriptions, Queued
Messages, Message Flow
remembered for ofïŹ‚ine client
➀ Retained Messages for every
topic possible (dynamic
topics!)
CHALLENGE 4:
HIGH AVAILABILITY
➀ MQTT Brokers are a single point
of failure
➀ Cloud Environments WILL fail
➀ Bridged Brokers (brokers that are
chained via MQTT) do not
support session migration
CHALLENGE 5:
BACKEND CONNECTIVITY
➀ IoT projects are seldom green-ïŹeld
➀ MQTT brokers must be integrated
into existing infrastructure (DB,
Message Queues, Microservices)
➀ Authentication & Authorization
Backend Applications
➀ Data Ingestion Backends often
need to scale linearly to cope with
incoming data
SCALING MQTT
A solution to the challenges for scaling MQTT
HIVEMQ OVERVIEW
➀ Enterprise MQTT Platform
➀ Elastic Clustering
➀ Linearly scalable
➀ Best-in-class Performance
➀ Open Source Plugin System
➀ Scalable horizontally & vertically
➀ > 1.000.000 MQTT connections
per broker possible
➀https://www.hivemq.com/
benchmark-10-million/
HIVEMQ CLUSTER ADVANTAGES
➀ Elimination of the Single Point
of Failure
➀ Sophisticated message
distribution across cluster
nodes
➀ Clients can connect to any
node to resume their sessions
➀ Linearly scalable
➀ High Availability due to
resilience and fault-tolerance
➀ Zero-Downtime Upgrades
HIVEMQ CLUSTER DETAILS
➀ Masterless Architecture
➀ Highly Resilient
➀ Designed for availability
➀ Elastic. You can add and remove nodes at
runtime
➀ Network partitions are supported
➀ Data distribution across cluster nodes
➀ ConïŹgurable Replica Count
➀ Self-Healing mechanisms when merging
network partitions
➀ No Zookeeper :-)
Broker 2 Broker 3
Broker 1
MQTT Broker Cluster
LIGHTWEIGHT MICROSERVICE COMMUNICATION
MQTT for devices AND microservices
Old Architecture
(Flipchart)
PROBLEMS AND PAINS
➀ Orchestration is part of the IoT device AND the
backend
➀ Multiple Steps involved in a business
booking on the client and for microservices
➀ Firmware Update needed for every change in
ïŹ‚ow. IoT device updates are hard to deploy
➀ No “You build it you run it” for devices
➀ In case of orchestrating service: can’t send data
to client proactively
➀ Internal microservices need to be exposed to
the Internet
➀ Push and pull communication combined
Broker 2 Broker 3
Broker 1
MQTT Broker Cluster
New Architecture
(Flipchart)
Example:
IoT device -> Backend
Example:
Backend -> IoT device
Example:
Backend -> Backend
SHARED SUBSCRIPTIONS
What about Kafka?
+ = ❀
dc-square GmbH
www.dc-square.de
info@dc-square.de
Dominik
Obermaier
dominik.obermaier@dc-square.de
@dobermai
Get in touch
HiveMQ -
Enterprise MQTT Broker
www.hivemq.com
@hivemq

Weitere Àhnliche Inhalte

Was ist angesagt?

MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT Dominik Obermaier
 
How mqtt 5 makes difficult io t use cases possible
How mqtt 5 makes difficult io t use cases possibleHow mqtt 5 makes difficult io t use cases possible
How mqtt 5 makes difficult io t use cases possibleFlorian Raschbichler
 
MQTT in the Internet of Things | Loop by Litmus Automation
MQTT in the Internet of Things | Loop by Litmus AutomationMQTT in the Internet of Things | Loop by Litmus Automation
MQTT in the Internet of Things | Loop by Litmus AutomationLitmusautomation
 
Is your MQTT broker IoT ready?
Is your MQTT broker IoT ready?Is your MQTT broker IoT ready?
Is your MQTT broker IoT ready?Eurotech
 
Mqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsMqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsRahul Gupta
 
SSL Implementation - IBM MQ - Secure Communications
SSL Implementation - IBM MQ - Secure Communications SSL Implementation - IBM MQ - Secure Communications
SSL Implementation - IBM MQ - Secure Communications nishchal29
 
Building Scalable & Reliable MQTT Clients for Enterprise Computing
Building Scalable & Reliable MQTT Clients for Enterprise ComputingBuilding Scalable & Reliable MQTT Clients for Enterprise Computing
Building Scalable & Reliable MQTT Clients for Enterprise ComputingSilvioGiebl
 
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationHiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationMargarethaErber
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of thingsCharles Gibbons
 
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...Alex Kritikos
 
Implementing Docker Load Balancing in Microservices Infrastructure
Implementing Docker Load Balancing in Microservices InfrastructureImplementing Docker Load Balancing in Microservices Infrastructure
Implementing Docker Load Balancing in Microservices InfrastructureDevSecOpsSg
 
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)Open Mobile Alliance
 
Webinar: The Software Matters in Open Networking
Webinar: The Software Matters in Open NetworkingWebinar: The Software Matters in Open Networking
Webinar: The Software Matters in Open NetworkingStorage Switzerland
 
Th hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilTh hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilICT PRISTINE
 
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....Marcin Bielak
 
Using Kubernetes to make cellular data plans cheaper for 50M users
Using Kubernetes to make cellular data plans cheaper for 50M usersUsing Kubernetes to make cellular data plans cheaper for 50M users
Using Kubernetes to make cellular data plans cheaper for 50M usersMirantis
 

Was ist angesagt? (19)

MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
MQTT AS A KEY TECHNOLOGY FOR INDUSTRY 4.0 & IIoT
 
How mqtt 5 makes difficult io t use cases possible
How mqtt 5 makes difficult io t use cases possibleHow mqtt 5 makes difficult io t use cases possible
How mqtt 5 makes difficult io t use cases possible
 
MQTT in the Internet of Things | Loop by Litmus Automation
MQTT in the Internet of Things | Loop by Litmus AutomationMQTT in the Internet of Things | Loop by Litmus Automation
MQTT in the Internet of Things | Loop by Litmus Automation
 
Mqtt 5 meetup dortmund
Mqtt 5 meetup dortmundMqtt 5 meetup dortmund
Mqtt 5 meetup dortmund
 
Is your MQTT broker IoT ready?
Is your MQTT broker IoT ready?Is your MQTT broker IoT ready?
Is your MQTT broker IoT ready?
 
Mqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of thingsMqtt – a protocol for the internet of things
Mqtt – a protocol for the internet of things
 
MQTT 5 - What's New?
MQTT 5 - What's New?MQTT 5 - What's New?
MQTT 5 - What's New?
 
SSL Implementation - IBM MQ - Secure Communications
SSL Implementation - IBM MQ - Secure Communications SSL Implementation - IBM MQ - Secure Communications
SSL Implementation - IBM MQ - Secure Communications
 
Building Scalable & Reliable MQTT Clients for Enterprise Computing
Building Scalable & Reliable MQTT Clients for Enterprise ComputingBuilding Scalable & Reliable MQTT Clients for Enterprise Computing
Building Scalable & Reliable MQTT Clients for Enterprise Computing
 
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integrationHiveMQ + Kafka: The ideal solution for IoT MQTT data integration
HiveMQ + Kafka: The ideal solution for IoT MQTT data integration
 
Mqtt presentation
Mqtt presentationMqtt presentation
Mqtt presentation
 
Protocols for internet of things
Protocols for internet of thingsProtocols for internet of things
Protocols for internet of things
 
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...
An IOT gateway Architecture using an MQTT bundle transport & LTP Convergence ...
 
Implementing Docker Load Balancing in Microservices Infrastructure
Implementing Docker Load Balancing in Microservices InfrastructureImplementing Docker Load Balancing in Microservices Infrastructure
Implementing Docker Load Balancing in Microservices Infrastructure
 
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
IETF building block in the LwM2M Ecosystem (IoT World 2017 Workshop)
 
Webinar: The Software Matters in Open Networking
Webinar: The Software Matters in Open NetworkingWebinar: The Software Matters in Open Networking
Webinar: The Software Matters in Open Networking
 
Th hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neilTh hauge rina-workshop-sdn-virtualisation_neil
Th hauge rina-workshop-sdn-virtualisation_neil
 
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....
Internet of Things - protocols review (MeetUp Wireless & Networks, PoznaƄ 21....
 
Using Kubernetes to make cellular data plans cheaper for 50M users
Using Kubernetes to make cellular data plans cheaper for 50M usersUsing Kubernetes to make cellular data plans cheaper for 50M users
Using Kubernetes to make cellular data plans cheaper for 50M users
 

Ähnlich wie Lightweight and scalable IoT Messaging with MQTT

Lightweight and Scalable IoT Messaging with MQTT
Lightweight and Scalable IoT Messaging with MQTTLightweight and Scalable IoT Messaging with MQTT
Lightweight and Scalable IoT Messaging with MQTTHiveMQ
 
Scaling MQTT - Webinar with Elastic Beam
Scaling MQTT - Webinar with Elastic BeamScaling MQTT - Webinar with Elastic Beam
Scaling MQTT - Webinar with Elastic BeamDominik Obermaier
 
EMQ Company Deck
EMQ Company DeckEMQ Company Deck
EMQ Company DeckEMQ
 
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data Integration
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data IntegrationHiveMQ + Kafka - The Ideal Solution for IoT MQTT Data Integration
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data IntegrationHiveMQ
 
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...HostedbyConfluent
 
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heavenKafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heavenDominik Obermaier
 
MQTT 5 - Why You Need It and Potential Pitfalls
MQTT 5 - Why You Need It and Potential PitfallsMQTT 5 - Why You Need It and Potential Pitfalls
MQTT 5 - Why You Need It and Potential PitfallsHiveMQ
 
Modernizing the Manufacturing Industry with Kafka and MQTT
Modernizing the Manufacturing Industry with Kafka and MQTT Modernizing the Manufacturing Industry with Kafka and MQTT
Modernizing the Manufacturing Industry with Kafka and MQTT Dominik Obermaier
 
HiveMQ Cloud Webinar
HiveMQ Cloud WebinarHiveMQ Cloud Webinar
HiveMQ Cloud WebinarHiveMQ
 
Best Practices for Streaming Connected Car Data with MQTT & Kafka
Best Practices for Streaming Connected Car Data with MQTT & KafkaBest Practices for Streaming Connected Car Data with MQTT & Kafka
Best Practices for Streaming Connected Car Data with MQTT & KafkaHiveMQ
 
HiveMQ Cloud - The Cloud Native IoT Messaging Layer
HiveMQ Cloud - The Cloud Native IoT Messaging LayerHiveMQ Cloud - The Cloud Native IoT Messaging Layer
HiveMQ Cloud - The Cloud Native IoT Messaging LayerDominik Obermaier
 
Introducing HiveMQ Cloud
Introducing HiveMQ CloudIntroducing HiveMQ Cloud
Introducing HiveMQ CloudMargarethaErber
 
How MQTT 5 Makes Difficult IoT Use Cases Possible
How MQTT 5 Makes Difficult IoT Use Cases PossibleHow MQTT 5 Makes Difficult IoT Use Cases Possible
How MQTT 5 Makes Difficult IoT Use Cases PossibleHiveMQ
 
MQTT.fx on HiveMQ Cloud Testing MQTT in the Cloud
MQTT.fx on HiveMQ Cloud Testing MQTT in the CloudMQTT.fx on HiveMQ Cloud Testing MQTT in the Cloud
MQTT.fx on HiveMQ Cloud Testing MQTT in the CloudHiveMQ
 
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)PeterNiblett
 
Debugging MQTT Client Communications With MQTT.fx and HiveMQ Cloud
Debugging MQTT Client Communications With MQTT.fx and HiveMQ CloudDebugging MQTT Client Communications With MQTT.fx and HiveMQ Cloud
Debugging MQTT Client Communications With MQTT.fx and HiveMQ CloudHiveMQ
 
Mqtt.fx on hive mq cloud
Mqtt.fx on hive mq cloudMqtt.fx on hive mq cloud
Mqtt.fx on hive mq cloudMargarethaErber
 
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQ
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQMachine to Machine Communication with Microsoft Azure IoT Edge & HiveMQ
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQHiveMQ
 
Design Like a Pro - Best Practices For IIoT 2016
Design Like a Pro - Best Practices For IIoT 2016Design Like a Pro - Best Practices For IIoT 2016
Design Like a Pro - Best Practices For IIoT 2016Inductive Automation
 
Design Like a Pro - Best Practices For IIoT
Design Like a Pro - Best Practices For IIoTDesign Like a Pro - Best Practices For IIoT
Design Like a Pro - Best Practices For IIoTInductive Automation
 

Ähnlich wie Lightweight and scalable IoT Messaging with MQTT (20)

Lightweight and Scalable IoT Messaging with MQTT
Lightweight and Scalable IoT Messaging with MQTTLightweight and Scalable IoT Messaging with MQTT
Lightweight and Scalable IoT Messaging with MQTT
 
Scaling MQTT - Webinar with Elastic Beam
Scaling MQTT - Webinar with Elastic BeamScaling MQTT - Webinar with Elastic Beam
Scaling MQTT - Webinar with Elastic Beam
 
EMQ Company Deck
EMQ Company DeckEMQ Company Deck
EMQ Company Deck
 
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data Integration
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data IntegrationHiveMQ + Kafka - The Ideal Solution for IoT MQTT Data Integration
HiveMQ + Kafka - The Ideal Solution for IoT MQTT Data Integration
 
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...
IoT Data Streaming - Why MQTT and Kafka are a match made in heaven | Dominik ...
 
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heavenKafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
Kafka Summit 2021 - Why MQTT and Kafka are a match made in heaven
 
MQTT 5 - Why You Need It and Potential Pitfalls
MQTT 5 - Why You Need It and Potential PitfallsMQTT 5 - Why You Need It and Potential Pitfalls
MQTT 5 - Why You Need It and Potential Pitfalls
 
Modernizing the Manufacturing Industry with Kafka and MQTT
Modernizing the Manufacturing Industry with Kafka and MQTT Modernizing the Manufacturing Industry with Kafka and MQTT
Modernizing the Manufacturing Industry with Kafka and MQTT
 
HiveMQ Cloud Webinar
HiveMQ Cloud WebinarHiveMQ Cloud Webinar
HiveMQ Cloud Webinar
 
Best Practices for Streaming Connected Car Data with MQTT & Kafka
Best Practices for Streaming Connected Car Data with MQTT & KafkaBest Practices for Streaming Connected Car Data with MQTT & Kafka
Best Practices for Streaming Connected Car Data with MQTT & Kafka
 
HiveMQ Cloud - The Cloud Native IoT Messaging Layer
HiveMQ Cloud - The Cloud Native IoT Messaging LayerHiveMQ Cloud - The Cloud Native IoT Messaging Layer
HiveMQ Cloud - The Cloud Native IoT Messaging Layer
 
Introducing HiveMQ Cloud
Introducing HiveMQ CloudIntroducing HiveMQ Cloud
Introducing HiveMQ Cloud
 
How MQTT 5 Makes Difficult IoT Use Cases Possible
How MQTT 5 Makes Difficult IoT Use Cases PossibleHow MQTT 5 Makes Difficult IoT Use Cases Possible
How MQTT 5 Makes Difficult IoT Use Cases Possible
 
MQTT.fx on HiveMQ Cloud Testing MQTT in the Cloud
MQTT.fx on HiveMQ Cloud Testing MQTT in the CloudMQTT.fx on HiveMQ Cloud Testing MQTT in the Cloud
MQTT.fx on HiveMQ Cloud Testing MQTT in the Cloud
 
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)
IAB-5039 : MQTT: A Protocol for the Internet of Things (InterConnect 2015)
 
Debugging MQTT Client Communications With MQTT.fx and HiveMQ Cloud
Debugging MQTT Client Communications With MQTT.fx and HiveMQ CloudDebugging MQTT Client Communications With MQTT.fx and HiveMQ Cloud
Debugging MQTT Client Communications With MQTT.fx and HiveMQ Cloud
 
Mqtt.fx on hive mq cloud
Mqtt.fx on hive mq cloudMqtt.fx on hive mq cloud
Mqtt.fx on hive mq cloud
 
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQ
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQMachine to Machine Communication with Microsoft Azure IoT Edge & HiveMQ
Machine to Machine Communication with Microsoft Azure IoT Edge & HiveMQ
 
Design Like a Pro - Best Practices For IIoT 2016
Design Like a Pro - Best Practices For IIoT 2016Design Like a Pro - Best Practices For IIoT 2016
Design Like a Pro - Best Practices For IIoT 2016
 
Design Like a Pro - Best Practices For IIoT
Design Like a Pro - Best Practices For IIoTDesign Like a Pro - Best Practices For IIoT
Design Like a Pro - Best Practices For IIoT
 

Mehr von Dominik Obermaier

MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]Dominik Obermaier
 
Securing MQTT - BuildingIoT 2016 slides
Securing MQTT - BuildingIoT 2016 slidesSecuring MQTT - BuildingIoT 2016 slides
Securing MQTT - BuildingIoT 2016 slidesDominik Obermaier
 
An introduction to MQTT - Pub / Sub for the masses
An introduction to MQTT - Pub / Sub for the massesAn introduction to MQTT - Pub / Sub for the masses
An introduction to MQTT - Pub / Sub for the massesDominik Obermaier
 
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]Dominik Obermaier
 
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014Dominik Obermaier
 
JAX 2014 - M2M for Java Developers with MQTT
JAX 2014 - M2M for Java Developers with MQTTJAX 2014 - M2M for Java Developers with MQTT
JAX 2014 - M2M for Java Developers with MQTTDominik Obermaier
 
Push! - MQTT for the Internet of Things
Push! - MQTT for the Internet of ThingsPush! - MQTT for the Internet of Things
Push! - MQTT for the Internet of ThingsDominik Obermaier
 
Eclipse Democamps 2013 - M2M for Java Developers with MQTT
Eclipse Democamps 2013 - M2M for Java Developers with MQTTEclipse Democamps 2013 - M2M for Java Developers with MQTT
Eclipse Democamps 2013 - M2M for Java Developers with MQTTDominik Obermaier
 
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...Dominik Obermaier
 
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013Dominik Obermaier
 

Mehr von Dominik Obermaier (10)

MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]
 
Securing MQTT - BuildingIoT 2016 slides
Securing MQTT - BuildingIoT 2016 slidesSecuring MQTT - BuildingIoT 2016 slides
Securing MQTT - BuildingIoT 2016 slides
 
An introduction to MQTT - Pub / Sub for the masses
An introduction to MQTT - Pub / Sub for the massesAn introduction to MQTT - Pub / Sub for the masses
An introduction to MQTT - Pub / Sub for the masses
 
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]
Pub/Sub for the masses- Ein EinfĂŒhrungsworkshop in MQTT [GERMAN]
 
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014
IoT with MQTT and Paho for Webpages - Eclipse Democamp MĂŒnchen 2014
 
JAX 2014 - M2M for Java Developers with MQTT
JAX 2014 - M2M for Java Developers with MQTTJAX 2014 - M2M for Java Developers with MQTT
JAX 2014 - M2M for Java Developers with MQTT
 
Push! - MQTT for the Internet of Things
Push! - MQTT for the Internet of ThingsPush! - MQTT for the Internet of Things
Push! - MQTT for the Internet of Things
 
Eclipse Democamps 2013 - M2M for Java Developers with MQTT
Eclipse Democamps 2013 - M2M for Java Developers with MQTTEclipse Democamps 2013 - M2M for Java Developers with MQTT
Eclipse Democamps 2013 - M2M for Java Developers with MQTT
 
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
Bringing M2M to the web with Paho: Connecting Java Devices and online dashboa...
 
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
M2M for Java Developers: MQTT with Eclipse Paho - Eclipsecon Europe 2013
 

KĂŒrzlich hochgeladen

Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 

KĂŒrzlich hochgeladen (20)

Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Lightweight and scalable IoT Messaging with MQTT

  • 1. LIGHTWEIGHT AND SCALABLE IOT MESSAGING WITH MQTT Dominik Obermaier | CTO @ HiveMQ
  • 4. Source IHS © 2016 IHS DEVICES ON THE INTERNET
  • 5. Key Industry Trend: IoT & Connectivity
  • 6. Introduction ‱ HiveMQ CTO ‱ Strong background in distributed and large scale systems architecture ‱ OASIS MQTT TC Member ‱ Author of “The Technical Foundations of IoT” ‱ Conference Speaker ‱ Program committee member for German and international IoT conferences Dominik Obermaier @dobermai
  • 8.
  • 9. IOT CHALLENGES ➀ Unreliable communication channels (e.g. mobile) ➀ Constrained Devices ➀ Low Bandwidth and High Latency environments ➀ Bi-directional communication required ➀ Security ➀ Instantaneous data exchange
  • 10. HTTP? ➀ Most popular web protocol ➀ Designed for the human web ➀ Request / Response based ➀ Document centric ➀ No Quality of service ➀ Stateless ➀ Text based (binary with HTTP/2) ➀ No Push capabilities ➀ Not possible to get notiïŹed when a client is ofïŹ‚ine
  • 11. CoAP
  • 12.
  • 13.
  • 14. WHAT IS MQTT? ➀ IoT Messaging Protocol ➀ Minimal Overhead ➀ Publish / Subscribe ➀ Easy ➀ Binary ➀ Data Agnostic ➀ Designed for reliable communication over unreliable channels
  • 15. USE CASES ➀ Push Communication ➀ Unreliable communication channels (e.g. mobile) ➀ Constrained Devices ➀ Low Bandwidth and High Latency environments ➀ Communication from backend to IoT device ➀ Lightweight backen communication
  • 16. PUBLISH / SUBSCRIBE Scalable communication paradigm for the IoT
  • 17. PUBLISH / SUBSCRIBE EXPLAINED
  • 18. MQTT PUB/SUB ADVANTAGES ➀ Space decoupling ➀ Time Decoupling ➀ Synchronization Decoupling ➀ Message ïŹltering based on subjects (topics) ➀ Push communication ➀ Dynamic Topics
  • 19. PROTOCOL DETAILS ➀ MQTT requires TCP/IP ➀ IPv4 and IPv6 supported ➀ Also works over websockets ➀ Persistent TCP connections ➀ Heartbeat mechanism ➀ Clean & Persistent Sessions ➀ QoS levels for message delivery guarantees ➀ TLS in the mix for professional deployments MQTT TCP IP 5-7 ISO/OSI Layer 4 ISO/OSI Layer 3 ISO/OSI Layer
  • 20. SCALING MQTT The journey to millions of devices
  • 21. CHALLENGE 1: HUGE AMOUNT OF TCP CONNECTIONS ➀ MQTT uses persistent TCP connections ➀ Number of concurrent TCP connections limited (hard to scale > 1-2 Million on a single machine) ➀ “Reconnect Storms”
  • 22. CHALLENGE 2: SECURITY ➀ TLS for secure communication ➀ TLS handshake is resource intensive ➀ Brokers accessible over the Internet ➀ Scalable backend systems for authentication & authorization needed
  • 23. CHALLENGE 3: MQTT IS STATEFUL ➀ MQTT allows sessions ➀ Subscriptions, Queued Messages, Message Flow remembered for ofïŹ‚ine client ➀ Retained Messages for every topic possible (dynamic topics!)
  • 24. CHALLENGE 4: HIGH AVAILABILITY ➀ MQTT Brokers are a single point of failure ➀ Cloud Environments WILL fail ➀ Bridged Brokers (brokers that are chained via MQTT) do not support session migration
  • 25. CHALLENGE 5: BACKEND CONNECTIVITY ➀ IoT projects are seldom green-ïŹeld ➀ MQTT brokers must be integrated into existing infrastructure (DB, Message Queues, Microservices) ➀ Authentication & Authorization Backend Applications ➀ Data Ingestion Backends often need to scale linearly to cope with incoming data
  • 26. SCALING MQTT A solution to the challenges for scaling MQTT
  • 27. HIVEMQ OVERVIEW ➀ Enterprise MQTT Platform ➀ Elastic Clustering ➀ Linearly scalable ➀ Best-in-class Performance ➀ Open Source Plugin System ➀ Scalable horizontally & vertically ➀ > 1.000.000 MQTT connections per broker possible
  • 29. HIVEMQ CLUSTER ADVANTAGES ➀ Elimination of the Single Point of Failure ➀ Sophisticated message distribution across cluster nodes ➀ Clients can connect to any node to resume their sessions ➀ Linearly scalable ➀ High Availability due to resilience and fault-tolerance ➀ Zero-Downtime Upgrades
  • 30. HIVEMQ CLUSTER DETAILS ➀ Masterless Architecture ➀ Highly Resilient ➀ Designed for availability ➀ Elastic. You can add and remove nodes at runtime ➀ Network partitions are supported ➀ Data distribution across cluster nodes ➀ ConïŹgurable Replica Count ➀ Self-Healing mechanisms when merging network partitions ➀ No Zookeeper :-) Broker 2 Broker 3 Broker 1 MQTT Broker Cluster
  • 31. LIGHTWEIGHT MICROSERVICE COMMUNICATION MQTT for devices AND microservices
  • 32.
  • 34. PROBLEMS AND PAINS ➀ Orchestration is part of the IoT device AND the backend ➀ Multiple Steps involved in a business booking on the client and for microservices ➀ Firmware Update needed for every change in ïŹ‚ow. IoT device updates are hard to deploy ➀ No “You build it you run it” for devices ➀ In case of orchestrating service: can’t send data to client proactively ➀ Internal microservices need to be exposed to the Internet ➀ Push and pull communication combined Broker 2 Broker 3 Broker 1 MQTT Broker Cluster
  • 35.