Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Building WSN with
MQTT, RPi & Arduino
Zvi Avraham
Founder & CEO
ZΛDΛTΛ
zvi@zadata.com
ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
PubSub (simplified)

ZΛDΛTΛ © 2013
PubSub
millions of Subscribers

ZΛDΛTΛ © 2013
PubSub
+ millions of Publishers

ZΛDΛTΛ © 2013
PubSub supports Broadcast
(1-to-many, FanOut)

ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
MQTT Timeline
2011 – IBM &
Eurotech donated
MQTT to Eclipse
M2M WG

1999 –
MQTT
invented

2008 –
MQTT-S
spec
released

Mar...
"The nice thing about standards is that you
have so many to choose from“
– Andrew Tanenbaum, "Computer Networks"

ZΛDΛTΛ ©...
MQTT Specs
MQTT v3.1 spec

MQTT-S v1.2 spec

ZΛDΛTΛ © 2013
Both MQTT specs combined
only 70 pages!
MQTT v3.1 spec – 42 pages!

MQTT-S v1.2 spec – 28 pages!

ZΛDΛTΛ © 2013
MQTT-S vs CoAP
CoAP spec 60 pages longer!
MQTT-S spec – 28 pages!

ZΛDΛTΛ © 2013

CoAP spec – 88 pages
Telecom M2M Standards
• Telecom standards like ETSI M2M TC102689
use CoAP for the low-level REST interface for
devices
• O...
What is MQTT?
• Message Queueing Telemetry Transport
• A lightweight publish/subscribe protocol
standard for traditional n...
MQTT Topics & Wildcards
• Topics are hierarchical (like filesystem path):
– /wsn/sensor/R1/temperature
– /wsn/sensor/R1/pr...
MQTT Message

4-bit code

Description

CONNECT

1

Client request to connect to Server

CONNACK

2

Connect Acknowledgment...
ZΛDΛTΛ © 2013
MQTT QoS Levels
QoS
level

Message
delivery

Delivery
semantics

Delivery
Guarantees

0

≤1

At most once

1

≥1

At least...
Clean Session flag
• When CONNECT-ing to the MQTT Broker the
client can say:
– CleanSession = 1
• Forget all the session s...
Retain flag
• If message PUBLISH-ed with Retain flag set to
1 - the MQTT broker will remember it as a last
published value...
MQTT over WebSocket
•
•
•
•
•

MQTT for the browsers
JavaScript API
Send MQTT packets over WS frames
Support binary data
F...
ZΛDΛTΛ © 2013
MQTT books
IBM MQTT Redbook

Chapter 3 – talks about MQTT

ZΛDΛTΛ © 2013
MQTT for Sensor Networks

-S
ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
MQTT vs MQTT-S
MQTT

MQTT-S

Transport type

Reliable point to
point streams

Unreliable datagrams

Communication

TCP/IP
...
MQTT-S Overview
• Designed to be very similar to MQTT.
– i.e. uses MQTT semantics

• Clients are WSN nodes, which communic...
“Simple Client” QoS = -1
QoS
level

Message
delivery

Delivery
semantics

Delivery
Guarantees

-1*

≤1

At most once

No c...
MQTT-S Gateway ↔ MQTT Broker

ZΛDΛTΛ © 2013
Mesh communication protocol for
Wireless Sensor Networks

ZΛDΛTΛ © 2013
Many different profiles

ZΛDΛTΛ © 2013
Types of ZigBee devices
• 1 Coordinator
• 1+ Routers
• 1+ End devices

• You change device type
by loading corresponding
f...
ZigBee modes
• Direct mode
– Full-duplex point-to-point communication

• AT Modem mode
– used to get/set registers or devi...
BWSN: book + kit
Book

Sparkfun kit ~ $115

ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
Arduino, RPi, BeagleBone specs

http://digitaldiner.blogspot.co.il/2012/10/arduino-uno-vs-beaglebone-vs-raspberry.html
ZΛD...
ZΛDΛTΛ © 2013
MQTT-S over ZigBee Gateway for M2M and Internet-of-Things

GATEWAY FOR M2M & IOT

ZΛDΛTΛ © 2013
MQTT-S Gateway & MQTT Broker

ZΛDΛTΛ © 2013
ZΛDΛTΛ © 2013
WSN node = Arduino + XBee

ZΛDΛTΛ © 2013
WSN with 3 nodes

ZΛDΛTΛ © 2013
MQTT-S Gateway on Raspberry Pi

ZΛDΛTΛ © 2013
MQTT-S Gateway on BeagleBoard

ZΛDΛTΛ © 2013
NIKE+

ZΛDΛTΛ © 2013
WHY?

ZΛDΛTΛ © 2013
Why Erlang/OTP?
• Ideal platform for Large-Scale (C1M to C10M)
PubSub systems
• Ideal for implementation of Gateways & Pro...
MQTT easy to parse with BitSyntax

ZΛDΛTΛ © 2013
MQTT Broker design
• 1 Cowboy process per MQTT or Websocket client
– Receives, sends and handles MQTT protocol frames usin...
MQTT Broker design (cont.)
• Subscribers Manager gen_server
– Manages table of subscribers
– Creating new subscriber
– Sen...
Scaling - Networking
• Tuning Linux TCP Stack – C1M (no C10M) Problem
• SYN flood – SYN cookies
– accumulation of half-ope...
Scaling – Erlang/OTP
• Sending messages as binaries
– so it will be 0-copy
– Especially useful for broadcast

• Broadcasti...
Scaling – Erlang/OTP (cont.)
• Moving data flow from Erlang built-in
Distribution to ØMQ
• Erlang built-in distribution st...
Open-Source Erlang libs we use:
• Cowboy – a high-performance embeddable
webserver
• sl – for communication with serial po...
Demo moved to Lightning talks after 18:00

DEMO

ZΛDΛTΛ © 2013
Thanks! Questions?
Contact:

Zvi Avraham
zvi@zadata.com
@nivertech

ZΛDΛTΛ © 2013
[http://1PU.SH] Building Wireless Sensor Networks with MQTT-SN, RaspberryPi and Erlang
Próxima SlideShare
Cargando en…5
×

[http://1PU.SH] Building Wireless Sensor Networks with MQTT-SN, RaspberryPi and Erlang

19.771 visualizaciones

Publicado el

the talk I gave at Erlang User Conference 2013, Logtel M2M and Devcon TLV conferences in June 2013.
http://1PU.SH

Publicado en: Tecnología
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE Format, ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y8nn3gmc } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí

[http://1PU.SH] Building Wireless Sensor Networks with MQTT-SN, RaspberryPi and Erlang

  1. 1. Building WSN with MQTT, RPi & Arduino Zvi Avraham Founder & CEO ZΛDΛTΛ zvi@zadata.com ZΛDΛTΛ © 2013
  2. 2. ZΛDΛTΛ © 2013
  3. 3. PubSub (simplified) ZΛDΛTΛ © 2013
  4. 4. PubSub millions of Subscribers ZΛDΛTΛ © 2013
  5. 5. PubSub + millions of Publishers ZΛDΛTΛ © 2013
  6. 6. PubSub supports Broadcast (1-to-many, FanOut) ZΛDΛTΛ © 2013
  7. 7. ZΛDΛTΛ © 2013
  8. 8. MQTT Timeline 2011 – IBM & Eurotech donated MQTT to Eclipse M2M WG 1999 – MQTT invented 2008 – MQTT-S spec released Mar 2013 OASIS MQTT TC Standardization ZΛDΛTΛ © 2013
  9. 9. "The nice thing about standards is that you have so many to choose from“ – Andrew Tanenbaum, "Computer Networks" ZΛDΛTΛ © 2013
  10. 10. MQTT Specs MQTT v3.1 spec MQTT-S v1.2 spec ZΛDΛTΛ © 2013
  11. 11. Both MQTT specs combined only 70 pages! MQTT v3.1 spec – 42 pages! MQTT-S v1.2 spec – 28 pages! ZΛDΛTΛ © 2013
  12. 12. MQTT-S vs CoAP CoAP spec 60 pages longer! MQTT-S spec – 28 pages! ZΛDΛTΛ © 2013 CoAP spec – 88 pages
  13. 13. Telecom M2M Standards • Telecom standards like ETSI M2M TC102689 use CoAP for the low-level REST interface for devices • Off-course those standards are huge – hundreds of pages … ZΛDΛTΛ © 2013
  14. 14. What is MQTT? • Message Queueing Telemetry Transport • A lightweight publish/subscribe protocol standard for traditional networks • Data-centric – Separates Data (Payload) from Metadata (Topic) ZΛDΛTΛ © 2013
  15. 15. MQTT Topics & Wildcards • Topics are hierarchical (like filesystem path): – /wsn/sensor/R1/temperature – /wsn/sensor/R1/pressure – /wsn/sensor/R2/temperature – /wsn/sensor/R2/pressure • A Subscriber can use wildcards in topics: – /wsn/sensor/+/temperature – /wsn/sensor/R1/+ – /wsn/sensor/# ZΛDΛTΛ © 2013
  16. 16. MQTT Message 4-bit code Description CONNECT 1 Client request to connect to Server CONNACK 2 Connect Acknowledgment PUBLISH 3 Publish message PUBACK 4 Publish Acknowledgment PUBREC 5 Publish Received (assured delivery part 1) PUBREL 6 Publish Release (assured delivery part 2) PUBCOMP 7 Publish Complete (assured delivery part 3) SUBSCRIBE 8 Client Subscribe request SUBACK 9 Subscribe Acknowledgment UNSUBSCRIBE 10 Client Unsubscribe request UNSUBACK 11 Unsubscribe Acknowledgment PINGREC 12 PING Request PINGRESP 13 PING Response DISCONNECT 14 Client ZΛDΛTΛ © 2013 is Disconnecting
  17. 17. ZΛDΛTΛ © 2013
  18. 18. MQTT QoS Levels QoS level Message delivery Delivery semantics Delivery Guarantees 0 ≤1 At most once 1 ≥1 At least once 2 ≡1 Exactly once Best effort No guarantees Guaranteed delivery Duplicates possible Guaranteed delivery No duplicates ZΛDΛTΛ © 2013
  19. 19. Clean Session flag • When CONNECT-ing to the MQTT Broker the client can say: – CleanSession = 1 • Forget all the session settings and subscriptions on connect and disconnect • So essentially every reconnect will be like a new session – CleanSession = 0 • Do not clean ZΛDΛTΛ © 2013
  20. 20. Retain flag • If message PUBLISH-ed with Retain flag set to 1 - the MQTT broker will remember it as a last published value on the topic. • This is useful for systems with low update frequency, so new clients will not need to wait for last known value. ZΛDΛTΛ © 2013
  21. 21. MQTT over WebSocket • • • • • MQTT for the browsers JavaScript API Send MQTT packets over WS frames Support binary data Fallbacks for older browsers w/o WS support ZΛDΛTΛ © 2013
  22. 22. ZΛDΛTΛ © 2013
  23. 23. MQTT books IBM MQTT Redbook Chapter 3 – talks about MQTT ZΛDΛTΛ © 2013
  24. 24. MQTT for Sensor Networks -S ZΛDΛTΛ © 2013
  25. 25. ZΛDΛTΛ © 2013
  26. 26. ZΛDΛTΛ © 2013
  27. 27. MQTT vs MQTT-S MQTT MQTT-S Transport type Reliable point to point streams Unreliable datagrams Communication TCP/IP Non-IP or UDP Networking Ethernet, WiFi, 3G ZigBee, Bluetooth, RF Min message size 2 bytes - PING 1 byte Max message size ≤ 24MB < 128 bytes (*) Battery-operated √ Sleeping clients √ QoS: -1 “dumb client” √ Gateway autodiscovery & fallbacks √ ZΛDΛTΛ © 2013
  28. 28. MQTT-S Overview • Designed to be very similar to MQTT. – i.e. uses MQTT semantics • Clients are WSN nodes, which communicate via a gateway to a broker on IP network. • The gateway may just translate messages between MQTT-S and MQTT, so the broker is a normal MQTT broker. • Designed to work on any WSN architecture/transport. ZΛDΛTΛ © 2013
  29. 29. “Simple Client” QoS = -1 QoS level Message delivery Delivery semantics Delivery Guarantees -1* ≤1 At most once No connection setup Transmit only Best effort – no guarantees (*) - MQTT-S only 0 ≤1 At most once 1 ≥1 At least once 2 ≡1 Exactly once Best effort No guarantees Guaranteed delivery Duplicates possible Guaranteed delivery No duplicates ZΛDΛTΛ © 2013
  30. 30. MQTT-S Gateway ↔ MQTT Broker ZΛDΛTΛ © 2013
  31. 31. Mesh communication protocol for Wireless Sensor Networks ZΛDΛTΛ © 2013
  32. 32. Many different profiles ZΛDΛTΛ © 2013
  33. 33. Types of ZigBee devices • 1 Coordinator • 1+ Routers • 1+ End devices • You change device type by loading corresponding firmware ZΛDΛTΛ © 2013
  34. 34. ZigBee modes • Direct mode – Full-duplex point-to-point communication • AT Modem mode – used to get/set registers or device info • API mode – most advanced mode – many tx/rcv frame types – Can send AT modem commands too ZΛDΛTΛ © 2013
  35. 35. BWSN: book + kit Book Sparkfun kit ~ $115 ZΛDΛTΛ © 2013
  36. 36. ZΛDΛTΛ © 2013
  37. 37. ZΛDΛTΛ © 2013
  38. 38. ZΛDΛTΛ © 2013
  39. 39. Arduino, RPi, BeagleBone specs http://digitaldiner.blogspot.co.il/2012/10/arduino-uno-vs-beaglebone-vs-raspberry.html ZΛDΛTΛ © 2013
  40. 40. ZΛDΛTΛ © 2013
  41. 41. MQTT-S over ZigBee Gateway for M2M and Internet-of-Things GATEWAY FOR M2M & IOT ZΛDΛTΛ © 2013
  42. 42. MQTT-S Gateway & MQTT Broker ZΛDΛTΛ © 2013
  43. 43. ZΛDΛTΛ © 2013
  44. 44. WSN node = Arduino + XBee ZΛDΛTΛ © 2013
  45. 45. WSN with 3 nodes ZΛDΛTΛ © 2013
  46. 46. MQTT-S Gateway on Raspberry Pi ZΛDΛTΛ © 2013
  47. 47. MQTT-S Gateway on BeagleBoard ZΛDΛTΛ © 2013
  48. 48. NIKE+ ZΛDΛTΛ © 2013
  49. 49. WHY? ZΛDΛTΛ © 2013
  50. 50. Why Erlang/OTP? • Ideal platform for Large-Scale (C1M to C10M) PubSub systems • Ideal for implementation of Gateways & Proxies • Easy ZigBee, MQTT & MQTT-S protocol handling using bit-syntax & binary comprehensions • Very easy to port to ARM-based Embedded Linux systems (not only RPi & BeagleBone/Board, but also professional SBCs) ZΛDΛTΛ © 2013
  51. 51. MQTT easy to parse with BitSyntax ZΛDΛTΛ © 2013
  52. 52. MQTT Broker design • 1 Cowboy process per MQTT or Websocket client – Receives, sends and handles MQTT protocol frames using bit-syntax • 1 gen_server/proces per MQTT Subscriber – managing MQTT client session – may survive TCP socket disconnects (according to QoS) – If client disconnected - queue messages (according to QoS) • 1 gen_server/process + 1 ETS table per Topic – manages list of subscribers per topic – broadcast messages to subscriber processes
  53. 53. MQTT Broker design (cont.) • Subscribers Manager gen_server – Manages table of subscribers – Creating new subscriber – Sending one-to-one messages • Topics Manager gen_server – Manages table of topics – Publish to topic (i.e. broadcast to all topic subsribers)
  54. 54. Scaling - Networking • Tuning Linux TCP Stack – C1M (no C10M) Problem • SYN flood – SYN cookies – accumulation of half-open sockets – being behind load balancer solves this • Broadcast T-put problem – Sending pings alone to millions of clients requires a lot of bandwidth • Do SSL termination on Load Balancer • Poor man QoS: – Separate ports for different protocols
  55. 55. Scaling – Erlang/OTP • Sending messages as binaries – so it will be 0-copy – Especially useful for broadcast • Broadcasting messages at low priority – so it will not interfere with accepting new clients • Writing our own broadcast timer code – since built-in timers do not scale to millions of processes • Tricks to fast spawn of new gen_servers – i.e. spawn gen_server per new subscriber or topic
  56. 56. Scaling – Erlang/OTP (cont.) • Moving data flow from Erlang built-in Distribution to ØMQ • Erlang built-in distribution still used for control-flow and cluster management
  57. 57. Open-Source Erlang libs we use: • Cowboy – a high-performance embeddable webserver • sl – for communication with serial port • binpp – for prety-printing binary dumps • lager – for logging • erlzmq2 – erlang binding for ØMQ • + many-many others ZΛDΛTΛ © 2013
  58. 58. Demo moved to Lightning talks after 18:00 DEMO ZΛDΛTΛ © 2013
  59. 59. Thanks! Questions? Contact: Zvi Avraham zvi@zadata.com @nivertech ZΛDΛTΛ © 2013

×