SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
SCALING MQTT
From Trial to Millions of MQTT Clients
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
PROTOCOL DETAILS
➤ MQTT requires TCP/IP
➤ IPv4 and IPv6 supported
➤ 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
PUBLISH / SUBSCRIBE
Scalable communication paradigm for the IoT
PUBLISH / SUBSCRIBE
SCALING MQTT
A solution
THE
SCALING
CHALLENGE
Billions 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 offline 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
A SCALABLE MQTT REFERENCE
ARCHITECTURE
A solution to the challenges for scaling MQTT
IoT
Devices
elastic beam
MQTT
with
TLS 1.2
elastic beam
MQTT
Broker
Cluster
Other
Enterprise
Applications
API
Proxy
Cluster
Application Servers
Databases Microservices
Datacenter
MQTT
over
Websockets
with
TLS 1.2
SCALING WITH
HIVEMQ CLUSTERING
Advantages & Best Practices
HIVEMQ OVERVIEW
➤ Enterprise MQTT Broker
➤ Elastic Clustering
➤ Linearly scalable
➤ Best-in-class Performance
➤ Open Source Plugin System
➤ Scalable horizontally &
vertically
➤ > 1.000.000 MQTT
connections per broker
possible
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
WHY IS HIGH AVAILABILITY
IMPORTANT FOR MQTT?
Distributed Systems are hard.
FALLACIES OF DISTRIBUTED COMPUTING
➤ The network is reliable.
➤ Latency is zero.
➤ Bandwidth is infinite.
➤ The network is secure.
➤ Topology doesn't change.
➤ There is one administrator.
➤ Transport cost is zero.
➤ The network is
homogeneous.
“The Eight Fallacies of Distributed Computing”
Peter Deutsch
THE CAP THEOREM
➤ Applicable to all distributed systems
with persistent state
➤ “Pick two”
➤ You can’t trade Partition Tolerance
(see Fallacies of Distributed
computing)
➤ CP would render the whole broker
cluster unusable in case no
consensus is achieved
➤ HiveMQ is AP and has self-healing
mechanisms for reconciliation =>
The broker cluster is always available
and never drops client connections
Image Credits: Benjamin Erb
http://berb.github.io/diploma-thesis/original/061_challenge.html
HIVEMQ CLUSTER DETAILS
➤ Masterless Architecture
➤ Highly Resilient
➤ Always Available (favors AP in the
CAP theorem)
➤ Elastic. You can add and remove
nodes at runtime
➤ Network partitions are supported
➤ Data distribution across cluster
nodes
➤ Configurable Replica Count
➤ Self-Healing mechanisms when
merging network partitions
Broker 2 Broker 3
Broker 1
MQTT Broker Cluster
IoT
Devices
elastic beam
MQTT
with
TLS 1.2
elastic beam
MQTT
Broker
Cluster
Other
Enterprise
Applications
API
Proxy
Cluster
Application Servers
Databases Microservices
Datacenter
MQTT
over
Websockets
with
TLS 1.2

Contenu connexe

Tendances

MQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsMQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsUniversity of Pretoria
 
Introduction to EMQ
Introduction to EMQIntroduction to EMQ
Introduction to EMQEMQ
 
MQTT - Communication in the Internet of Things
MQTT - Communication in the Internet of ThingsMQTT - Communication in the Internet of Things
MQTT - Communication in the Internet of ThingsChristian Götz
 
Connecting Internet of Things to the Cloud with MQTT
Connecting Internet of Things to the Cloud with MQTTConnecting Internet of Things to the Cloud with MQTT
Connecting Internet of Things to the Cloud with MQTTLeon Anavi
 
MQTT – protocol for yours IoT
MQTT – protocol for yours IoTMQTT – protocol for yours IoT
MQTT – protocol for yours IoTMiroslav Resetar
 
EMQ Company Deck
EMQ Company DeckEMQ Company Deck
EMQ Company DeckEMQ
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in EnglishEric Xiao
 
Introduction to MQTT
Introduction to MQTTIntroduction to MQTT
Introduction to MQTTEMQ
 
Best Practices Using MQTT to Connect Millions of IoT Devices
Best Practices Using MQTT  to Connect Millions of IoT DevicesBest Practices Using MQTT  to Connect Millions of IoT Devices
Best Practices Using MQTT to Connect Millions of IoT DevicesChristian Götz
 
Introduction to EMQ X Enterprise
Introduction to EMQ X EnterpriseIntroduction to EMQ X Enterprise
Introduction to EMQ X EnterpriseEMQ
 
MQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionMQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionPrem Sanil
 
MQTT with Java - a protocol for IoT and M2M communication
MQTT with Java - a protocol for IoT and M2M communicationMQTT with Java - a protocol for IoT and M2M communication
MQTT with Java - a protocol for IoT and M2M communicationChristian Götz
 
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...Christian Götz
 
MQTT - The Internet of Things Protocol
MQTT - The Internet of Things ProtocolMQTT - The Internet of Things Protocol
MQTT - The Internet of Things ProtocolBen Hardill
 
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
 
A Short Report on MQTT protocol for Internet of Things(IoT)
A Short Report on MQTT protocol for Internet of Things(IoT)A Short Report on MQTT protocol for Internet of Things(IoT)
A Short Report on MQTT protocol for Internet of Things(IoT)sonycse
 
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
 

Tendances (20)

MQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of ThingsMQTT - Protocol for the Internet of Things
MQTT - Protocol for the Internet of Things
 
Introduction to EMQ
Introduction to EMQIntroduction to EMQ
Introduction to EMQ
 
MQTT - Communication in the Internet of Things
MQTT - Communication in the Internet of ThingsMQTT - Communication in the Internet of Things
MQTT - Communication in the Internet of Things
 
Connecting Internet of Things to the Cloud with MQTT
Connecting Internet of Things to the Cloud with MQTTConnecting Internet of Things to the Cloud with MQTT
Connecting Internet of Things to the Cloud with MQTT
 
MQTT – protocol for yours IoT
MQTT – protocol for yours IoTMQTT – protocol for yours IoT
MQTT – protocol for yours IoT
 
EMQ Company Deck
EMQ Company DeckEMQ Company Deck
EMQ Company Deck
 
Introduction MQTT in English
Introduction MQTT in EnglishIntroduction MQTT in English
Introduction MQTT in English
 
Introduction to MQTT
Introduction to MQTTIntroduction to MQTT
Introduction to MQTT
 
Best Practices Using MQTT to Connect Millions of IoT Devices
Best Practices Using MQTT  to Connect Millions of IoT DevicesBest Practices Using MQTT  to Connect Millions of IoT Devices
Best Practices Using MQTT to Connect Millions of IoT Devices
 
Mqtt
MqttMqtt
Mqtt
 
Introduction to EMQ X Enterprise
Introduction to EMQ X EnterpriseIntroduction to EMQ X Enterprise
Introduction to EMQ X Enterprise
 
MQTT
MQTTMQTT
MQTT
 
MQTT IOT Protocol Introduction
MQTT IOT Protocol IntroductionMQTT IOT Protocol Introduction
MQTT IOT Protocol Introduction
 
MQTT with Java - a protocol for IoT and M2M communication
MQTT with Java - a protocol for IoT and M2M communicationMQTT with Java - a protocol for IoT and M2M communication
MQTT with Java - a protocol for IoT and M2M communication
 
MQTT
MQTTMQTT
MQTT
 
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
Smart Home Live: Intelligent Detection of Fire or a Break-In with MQTT and Op...
 
MQTT - The Internet of Things Protocol
MQTT - The Internet of Things ProtocolMQTT - The Internet of Things Protocol
MQTT - The Internet of Things Protocol
 
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
 
A Short Report on MQTT protocol for Internet of Things(IoT)
A Short Report on MQTT protocol for Internet of Things(IoT)A Short Report on MQTT protocol for Internet of Things(IoT)
A Short Report on MQTT protocol for Internet of Things(IoT)
 
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...
 

Similaire à Scaling MQTT - Webinar with Elastic Beam

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 MQTTDominik Obermaier
 
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
 
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTTHiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTTDominik Obermaier
 
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...Rambus
 
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
 
OSI reference model
OSI reference modelOSI reference model
OSI reference modelshanthishyam
 
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
 
CCN AAT 2023 for mqtt protocol ppt presentation
CCN AAT 2023 for mqtt protocol ppt presentationCCN AAT 2023 for mqtt protocol ppt presentation
CCN AAT 2023 for mqtt protocol ppt presentationHidangmayumRahul
 
Automating linux network performance testing
Automating linux network performance testingAutomating linux network performance testing
Automating linux network performance testingAntonio Ojea Garcia
 
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
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTHenrik Sjöstrand
 
Geef Industry 4.0 een boost
Geef Industry 4.0 een boostGeef Industry 4.0 een boost
Geef Industry 4.0 een boostHowest_ENM
 
From virtual to high end HW routing for the adult
From virtual to high end HW routing for the adultFrom virtual to high end HW routing for the adult
From virtual to high end HW routing for the adultMarketingArrowECS_CZ
 
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
 
TFSNET Brochure (2)
TFSNET Brochure (2)TFSNET Brochure (2)
TFSNET Brochure (2)zoe whittle
 
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
 

Similaire à Scaling MQTT - Webinar with Elastic Beam (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
 
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
 
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTTHiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTT
 
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...
Protecting Data In Motion with MACsec - Gijs Willemse - Rambus Design Summit ...
 
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)
 
OSI reference model
OSI reference modelOSI reference model
OSI reference model
 
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
 
ATM
ATMATM
ATM
 
CCN AAT 2023 for mqtt protocol ppt presentation
CCN AAT 2023 for mqtt protocol ppt presentationCCN AAT 2023 for mqtt protocol ppt presentation
CCN AAT 2023 for mqtt protocol ppt presentation
 
Automating linux network performance testing
Automating linux network performance testingAutomating linux network performance testing
Automating linux network performance testing
 
Mqtt
MqttMqtt
Mqtt
 
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
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT
 
Geef Industry 4.0 een boost
Geef Industry 4.0 een boostGeef Industry 4.0 een boost
Geef Industry 4.0 een boost
 
From virtual to high end HW routing for the adult
From virtual to high end HW routing for the adultFrom virtual to high end HW routing for the adult
From virtual to high end HW routing for the adult
 
Why transync mqtt gps tracker
Why transync mqtt gps trackerWhy transync mqtt gps tracker
Why transync mqtt gps tracker
 
Why TranSync MQTT GPS Tracker
Why TranSync MQTT GPS TrackerWhy TranSync MQTT GPS Tracker
Why TranSync MQTT GPS Tracker
 
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
 
TFSNET Brochure (2)
TFSNET Brochure (2)TFSNET Brochure (2)
TFSNET Brochure (2)
 
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
 

Plus de Dominik Obermaier

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
 
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...Dominik Obermaier
 
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22Dominik Obermaier
 
Building a reliable and scalable IoT platform with MongoDB and HiveMQ
Building a reliable and scalable IoT platform with MongoDB and HiveMQBuilding a reliable and scalable IoT platform with MongoDB and HiveMQ
Building a reliable and scalable IoT platform with MongoDB and HiveMQDominik Obermaier
 
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 - 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
 
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
 
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 pitfallsDominik Obermaier
 
A pure Java MQTT Stack for IoT
A pure Java MQTT Stack for IoTA pure Java MQTT Stack for IoT
A pure Java MQTT Stack for IoTDominik Obermaier
 
Lightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Architectures with MQTTLightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Architectures with MQTTDominik Obermaier
 
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTIn search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTDominik Obermaier
 
MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]Dominik 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
 
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
 
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
 

Plus de Dominik Obermaier (17)

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
 
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
Software-Infrastrukturen modernisieren in der Produktion - Digitale Transform...
 
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
Inntroduction to MQTT Sparkplug with HiveMQ and Opto22
 
Building a reliable and scalable IoT platform with MongoDB and HiveMQ
Building a reliable and scalable IoT platform with MongoDB and HiveMQBuilding a reliable and scalable IoT platform with MongoDB and HiveMQ
Building a reliable and scalable IoT platform with MongoDB and HiveMQ
 
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 - 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
 
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
 
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
 
A pure Java MQTT Stack for IoT
A pure Java MQTT Stack for IoTA pure Java MQTT Stack for IoT
A pure Java MQTT Stack for IoT
 
Lightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Architectures with MQTTLightweight and scalable IoT Architectures with MQTT
Lightweight and scalable IoT Architectures with MQTT
 
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTIn search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
 
MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [GERMAN]MQTT Deep Dive Workshop [GERMAN]
MQTT Deep Dive Workshop [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]
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
 
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
 
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
 

Dernier

Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentMahmoud Rabie
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...amber724300
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 

Dernier (20)

Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Digital Tools & AI in Career Development
Digital Tools & AI in Career DevelopmentDigital Tools & AI in Career Development
Digital Tools & AI in Career Development
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
JET Technology Labs White Paper for Virtualized Security and Encryption Techn...
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 

Scaling MQTT - Webinar with Elastic Beam

  • 1. SCALING MQTT From Trial to Millions of MQTT Clients
  • 2. WHAT IS MQTT? ➤ IoT Messaging Protocol ➤ Minimal Overhead ➤ Publish / Subscribe ➤ Easy ➤ Binary ➤ Data Agnostic ➤ Designed for reliable communication over unreliable channels
  • 3. USE CASES ➤ Push Communication ➤ Unreliable communication channels (e.g. mobile) ➤ Constrained Devices ➤ Low Bandwidth and High Latency environments ➤ Communication from backend to IoT device
  • 4. PROTOCOL DETAILS ➤ MQTT requires TCP/IP ➤ IPv4 and IPv6 supported ➤ 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
  • 5. PUBLISH / SUBSCRIBE Scalable communication paradigm for the IoT
  • 9. 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”
  • 10. CHALLENGE 2: SECURITY ➤ TLS for secure communication ➤ TLS handshake is resource intensive ➤ Brokers accessible over the Internet ➤ Scalable backend systems for authentication & authorization needed
  • 11. CHALLENGE 3: MQTT IS STATEFUL ➤ MQTT allows sessions ➤ Subscriptions, Queued Messages, Message Flow remembered for offline client ➤ Retained Messages for every topic possible (dynamic topics!)
  • 12. 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
  • 13. A SCALABLE MQTT REFERENCE ARCHITECTURE A solution to the challenges for scaling MQTT
  • 14. IoT Devices elastic beam MQTT with TLS 1.2 elastic beam MQTT Broker Cluster Other Enterprise Applications API Proxy Cluster Application Servers Databases Microservices Datacenter MQTT over Websockets with TLS 1.2
  • 16. HIVEMQ OVERVIEW ➤ Enterprise MQTT Broker ➤ Elastic Clustering ➤ Linearly scalable ➤ Best-in-class Performance ➤ Open Source Plugin System ➤ Scalable horizontally & vertically ➤ > 1.000.000 MQTT connections per broker possible
  • 17. 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
  • 18. WHY IS HIGH AVAILABILITY IMPORTANT FOR MQTT? Distributed Systems are hard.
  • 19. FALLACIES OF DISTRIBUTED COMPUTING ➤ The network is reliable. ➤ Latency is zero. ➤ Bandwidth is infinite. ➤ The network is secure. ➤ Topology doesn't change. ➤ There is one administrator. ➤ Transport cost is zero. ➤ The network is homogeneous. “The Eight Fallacies of Distributed Computing” Peter Deutsch
  • 20. THE CAP THEOREM ➤ Applicable to all distributed systems with persistent state ➤ “Pick two” ➤ You can’t trade Partition Tolerance (see Fallacies of Distributed computing) ➤ CP would render the whole broker cluster unusable in case no consensus is achieved ➤ HiveMQ is AP and has self-healing mechanisms for reconciliation => The broker cluster is always available and never drops client connections Image Credits: Benjamin Erb http://berb.github.io/diploma-thesis/original/061_challenge.html
  • 21. HIVEMQ CLUSTER DETAILS ➤ Masterless Architecture ➤ Highly Resilient ➤ Always Available (favors AP in the CAP theorem) ➤ Elastic. You can add and remove nodes at runtime ➤ Network partitions are supported ➤ Data distribution across cluster nodes ➤ Configurable Replica Count ➤ Self-Healing mechanisms when merging network partitions Broker 2 Broker 3 Broker 1 MQTT Broker Cluster
  • 22. IoT Devices elastic beam MQTT with TLS 1.2 elastic beam MQTT Broker Cluster Other Enterprise Applications API Proxy Cluster Application Servers Databases Microservices Datacenter MQTT over Websockets with TLS 1.2