Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

(MBL201) Device Clouds: Best Practices in Building a Connected Device Backend in the Cloud | AWS re:Invent 2014

2,614 views

Published on

The more devices are connected, the more new applications and services emerge that use those connected devices. AWS offers a wide variety of services that can be used to build andquot;device clouds,andquot; backend infrastructure for connecting different kinds of devices, including smart phones, tablets, smart meters, connected cars, sensor and actuator gateways, and so on. In this session, we share best practices for authentication, authorization, messaging, data collection, analytics, and much more. We also hear from Internet of Things (IoT) customers who have successfully built highly-scalable device clouds on AWS.

Published in: Technology

(MBL201) Device Clouds: Best Practices in Building a Connected Device Backend in the Cloud | AWS re:Invent 2014

  1. 1. November 12, 2014, Las Vegas, NV Jinesh Varia, @jinman
  2. 2. Scalability User Experience Security
  3. 3. Elastic Load Balancing Elastic Load Balancing API API API Device Device Device Brokers
  4. 4. Scalability User Experience Security
  5. 5. Scalability User Experience Security
  6. 6. POST https://api.spark.io/v1/devices/teddy-bear/hug
  7. 7. ? ?
  8. 8. a= 1 b= “two” c= 3d = “four” a= 1b = “two” c= 3 d = “four” c= 3d = “four” geofence= inside where truck in geofencea and c > 1 and d != “two” •HTTP Post (webhook) •SNS •RedShift •S3 •Republish on another topic •Republish to another account •Transform payload
  9. 9. a= 2
  10. 10. –Custom actors for AWS actionsiOS8 interactive notifications
  11. 11. REQUEST RESPONSE ???
  12. 12. STREAM PROCESSING / INTEGRATIONS Device Consumers Application Consumers ?
  13. 13. Study by Stephen Nicholas (MQTT and HTTP on Android) Creating Connection (% Battery used) 3G Wifi HTTPS MQTT HTTPS MQTT 0.02972 0.04563 0.00228 0.00276
  14. 14. Study by Stephen Nicholas (MQTT and HTTP on Android) % Battery used / hour 3G Wifi HTTPS MQTT HTTPS MQTT 1.11553 0.72465 0.15839 0.01055 0.48697 0.32041 0.08774 0.00478 0.33277 0.16027 0.02897 0.00230 0.08263 0.07991 0.00824 0.00112 60 Seconds 120 Seconds 240 Seconds 480 Seconds
  15. 15. BROKER QoS0 PUBLISH PUBLISH PUBACK PUBLISH PUBACK PUBREL PUBCOMP -At most once -Does not survive network failure QoS1 -At least once -Can survive network failure -Can be duplicated QoS2 -Exactly once -Can survive network failure -Never duplicated
  16. 16. BROKER CONNECT ID=thing2 SUBSCRIBE things/# 2 CONNECT ID=thing1 LWT=things/thing1 “disconnected” 1 PINGREQ PINGRESP KEEP_ALIVE exceeded 2 things/thing1 “disconnected”
  17. 17. SUBSCRIPTION SUBSCRIPTION SESSION SESSION SUBSCRIPTION SESSION SESSION SESSION 1 2 3 4 5 1 2 3 5 4 •Durable Subscription –Messages 2 and 4 are not lost but will be received on next connection
  18. 18. Real-time message processing & Scalable API management
  19. 19. 1 Introduction 2 3 4 Under the Hood: What’s Unique Use Case Evolving with AWS
  20. 20. Let’s take a look at the evolution… -Listeners -Commanders Yarn Cluster: -Translation (i/o) -BI Public-facing API MongoDB
  21. 21. Sinatra Postman
  22. 22. Sinatra YARN ZooKeeper Postman
  23. 23. VPC (translation) Public EC2 (APIs)
  24. 24. http://bit.ly/awsevals

×